Function at 0x4218e0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0xa50
mov eax, dword [ebp + 0x18]
mov ecx, dword [ebp + 0x14]
mov edx, dword [ebp + 0x10]
mov esi, dword [ebp + 0xc]
mov edi, dword [ebp + 8]
mov dword [esp + 0xa48], eax
mov dword [esp + 0xa44], ecx
mov dword [esp + 0xa40], edx
mov dword [esp + 0xa3c], esi
mov dword [esp + 0xa38], edi
mov dword [0x4979b4], 0xba27cc1d
mov eax, esp
mov dword [eax + 4], 8
mov dword [eax], 0x7cbd
call fcn.0043a250
mov dword [esp + 0xa34], eax
mov eax, dword [0x498334]
shl eax, 8
cmp eax, 0xfdf87ef9
jl 0x42198b
mov eax, dword [0x497b10]
shl eax, 3
imul eax, eax, 0x3305f5a
xor eax, 0xb8ff521
cmp eax, 0xbf98a94e
je 0x421986
mov eax, dword [0x498ecc]
or eax, 0x4b833ed8
mov dword [0x498ecc], eax
jmp 0x42198b
mov eax, dword [esp + 0xa34]
mov ecx, dword [esp + 0xa38]
mov edx, esp
mov dword [edx + 4], eax
mov dword [edx], ecx
call fcn.004555b0
mov dword [esp + 0xa0c], eax
mov eax, dword [0x4994a0]
add eax, 0x370c54fa
mov ecx, dword [0x497cd0]
imul ecx, eax
mov dword [0x497cd0], ecx
mov eax, dword [esp + 0xa34]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 8
call fcn.004050b0
mov eax, dword [0x498370]
not eax
imul eax, eax, 0xaecb582b
mov ecx, dword [0x497d34]
xor ecx, eax
mov dword [0x497d34], ecx
cmp dword [esp + 0xa0c], 0
jne 0x421bbe
mov eax, 0xc7782541
mov cx, word [0x49ac14]
mov dx, cx
dec edx
mov si, dx
mov word [0x49ac14], si
movsx edx, cx
and edx, 0x2575312d
cmp eax, edx
jle 0x421a44
mov eax, dword [0x49878c]
xor eax, 0x79b2e217
mov dword [0x49878c], eax
jmp 0x421a4e
mov dword [0x497ab0], 0x1b471ea1
cmp dword [esp + 0xa48], 0
je 0x421aa8
mov ax, word [0x49aa14]
movsx ecx, ax
sar ecx, 9
mov edx, dword [0x497990]
inc edx
mov dword [0x497990], edx
sub ecx, edx
mov edx, dword [0x498fc0]
or edx, ecx
mov dword [0x498fc0], edx
mov ecx, dword [esp + 0xa40]
call fcn.0040ada0
mov ecx, dword [0x497628]
add ecx, 0x6d3d0e63
mov dword [0x497628], ecx
jmp 0x4242cd
mov eax, dword [0x4992a4]
xor eax, 0x1045d651
mov dword [0x4992a4], eax
mov eax, dword [esp + 0xa40]
mov ecx, dword [esp + 0xa3c]
mov edx, esp
mov dword [edx + 4], eax
mov dword [edx], ecx
call fcn.00447ea0
mov dword [esp + 0xa08], eax
mov eax, dword [0x4977d0]
xor eax, 0xffffffff
or eax, 0xcb504f3d
cmp eax, 0xa509a498
je 0x421b04
mov eax, dword [0x4990c0]
and eax, 0xf885e011
mov dword [0x4990c0], eax
jmp 0x421b0d
mov word [0x499b64], 0x1475
cmp dword [esp + 0xa08], 0
jg 0x421baa
mov eax, 0xfbffffbe
mov cx, word [0x49a058]
movsx edx, cx
sar edx, 7
xor edx, 0x1593e3ea
cmp eax, edx
jl 0x421b71
mov eax, dword [0x4986a4]
mov ecx, eax
dec ecx
mov dword [0x4986a4], ecx
mov ecx, 0x74109924
sub ecx, eax
or ecx, 0x767
mov dx, word [0x49a0be]
mov ax, dx
and eax, ecx
mov dx, ax
mov word [0x49a0be], dx
jmp 0x421b86
mov eax, dword [0x498050]
imul eax, eax, 0x2ec911e8
or eax, 0x3a258d69
mov dword [0x499470], eax
mov ecx, dword [esp + 0xa40]
call fcn.0040ada0
mov ax, word [0x499f9e]
mov cx, ax
and ecx, 0x76f6
mov ax, cx
mov word [0x499f9e], ax
mov eax, dword [0x4984a4]
or eax, 0x220c480
mov dword [0x4984a4], eax
jmp 0x4242cd
mov eax, 0x9c160880
mov ecx, dword [0x4981cc]
or ecx, 0xab763eb7
mov dword [0x4981cc], ecx
mov ecx, dword [0x498ea8]
shr ecx, 2
mov dx, word [0x49a708]
mov si, dx
and esi, ecx
mov dx, si
mov word [0x49a708], dx
mov dx, word [0x49ac40]
mov cx, dx
dec ecx
mov dx, cx
mov word [0x49ac40], dx
movsx ecx, dx
mov esi, dword [0x498540]
xor esi, ecx
mov dword [0x498540], esi
mov ecx, dword [0x497bf0]
imul ecx, ecx, 0x1c0e56f1
mov dword [0x497bf0], ecx
mov ecx, dword [0x498f60]
cmp eax, ecx
jl 0x421c73
mov eax, dword [0x499404]
mov ecx, eax
inc ecx
mov dword [0x499404], ecx
mov ecx, dword [0x497cf0]
lea eax, [eax + ecx + 1]
and eax, 0x35e3
mov dx, word [0x499bc4]
mov cx, dx
imul ecx, eax
mov dx, cx
mov word [0x499bc4], dx
jmp 0x421ca3
mov ax, word [0x49a02a]
mov cx, ax
mov ax, word [0x49acba]
mov dx, ax
mov esi, 0x60d43cd5
sub esi, edx
xor ecx, esi
mov ax, word [0x49a304]
mov dx, ax
imul edx, ecx
mov ax, dx
mov word [0x49a304], ax
mov eax, dword [0x497b90]
sar eax, 3
or eax, 0xf9e6519
mov cx, word [0x49acf6]
mov dx, cx
dec edx
mov cx, dx
mov word [0x49acf6], cx
movsx edx, cx
cmp eax, edx
jl 0x421ce8
mov ax, word [0x49aa18]
mov cx, ax
xor ecx, 0x264c
mov ax, cx
mov word [0x49aa18], ax
mov eax, 0x26aa4c7b
mov ecx, dword [0x499ad0]
xor ecx, 0xf3a52090
or ecx, 0x8528b4d
mov dword [0x499a64], ecx
lea ecx, [esp + 0x65c]
mov dword [esp + 0x130], eax
call fcn.004495b0
mov ecx, dword [0x497e98]
add ecx, 0xdead076
mov dword [0x497e98], ecx
mov dx, word [0x49abee]
movsx ecx, dx
mov esi, dword [0x498ab4]
not esi
imul ecx, esi
mov esi, dword [0x497dd8]
mov edi, esi
inc edi
mov dword [0x497dd8], edi
imul ecx, esi
mov esi, dword [esp + 0x130]
cmp esi, ecx
mov dword [esp + 0x12c], eax
jg 0x421d87
mov eax, dword [0x4993dc]
shl eax, 2
and eax, 0x1f82b000
mov ecx, dword [0x499064]
or ecx, eax
mov dword [0x499064], ecx
jmp 0x421da1
mov eax, dword [0x497870]
inc eax
mov dword [0x497870], eax
mov ecx, dword [0x4978e4]
imul ecx, eax
mov dword [0x4978e4], ecx
mov eax, 0xc1a4e5ac
mov cx, word [0x49a466]
mov dx, cx
or edx, 0xa4de
mov cx, dx
mov word [0x49a466], cx
mov edx, dword [0x4983e4]
mov esi, edx
dec esi
mov dword [0x4983e4], esi
mov dword [0x497efc], edx
mov dword [esp + 0x21c], 0
mov dword [esp + 0x218], 0
mov cx, word [0x49a89c]
mov dx, cx
dec edx
mov cx, dx
mov word [0x49a89c], cx
movsx edx, cx
add edx, 0x599a22f8
or edx, 0x92752f3b
cmp eax, edx
jne 0x421e2e
mov eax, dword [0x4982f8]
mov ecx, dword [0x497f70]
lea eax, [eax + ecx - 0x7fbf7387]
mov dword [0x497f70], eax
mov eax, 0x934317a4
mov ecx, dword [0x4986f0]
add ecx, 0x5da97bb1
mov dword [0x4986f0], ecx
mov dword [esp + 0x210], 0xffffffff
mov dword [esp + 0x20c], 0xffffffff
mov ecx, dword [0x499740]
mov edx, ecx
dec edx
mov dword [0x499740], edx
mov edx, dword [0x498e1c]
lea ecx, [edx + ecx - 1]
mov dword [0x498e1c], ecx
mov dword [esp + 0x208], 0x50
mov ecx, dword [0x498d5c]
mov edx, dword [0x498638]
shl edx, 4
xor ecx, edx
mov si, word [0x49ad00]
mov dx, si
inc edx
mov di, dx
mov word [0x49ad00], di
movsx edx, si
sub eax, edx
cmp ecx, eax
jge 0x421ef0
mov eax, dword [0x4998e0]
add eax, 0xe4374994
xor eax, 0x1d3547bd
cmp eax, 0x6c33ef08
jge 0x421eeb
mov eax, dword [0x498f1c]
dec eax
mov dword [0x498f1c], eax
mov ecx, dword [0x498218]
and ecx, eax
mov dword [0x498218], ecx
jmp 0x421ef0
mov eax, 0x3c2033e2
mov byte [esp + 0x207], 0
mov cx, word [0x49a6c6]
mov dx, cx
add edx, 0x7ae59ed3
mov cx, dx
mov word [0x49a6c6], cx
mov edx, esp
mov dword [edx], 0
mov dword [esp + 0x128], eax
call fcn.00450780
add eax, 0x258
adc edx, 0
mov dword [esp + 0x218], eax
mov dword [esp + 0x21c], edx
mov eax, dword [0x499124]
mov edx, 0x57173c3c
sub edx, eax
mov eax, dword [0x499890]
mov esi, dword [esp + 0x128]
sub esi, eax
and esi, 0xe57b4872
cmp edx, esi
jl 0x421f73
mov dword [0x497d70], 0xfbfebff7
mov byte [esp + 0x68d], 0
mov eax, dword [0x497a58]
add eax, 0xddcac860
mov dword [0x497a58], eax
mov eax, dword [esp + 0xa38]
mov ecx, esp
mov dword [ecx], eax
call fcn.004516e0
mov dword [esp + 0x228], eax
mov dx, word [0x49aa68]
mov ax, dx
imul eax, eax, 0xaff33daf
mov dx, ax
mov word [0x49aa68], dx
cmp dword [esp + 0x228], 0x7f
jle 0x421fdd
mov eax, dword [0x499a20]
xor eax, 0x6ff90f80
mov dword [0x499a20], eax
jmp 0x4241bc
mov eax, dword [0x4988e0]
not eax
mov dword [0x49900c], eax
mov eax, dword [esp + 0xa38]
mov ecx, esp
mov dword [ecx + 4], eax
lea eax, [esp + 0x95f]
mov dword [ecx], eax
call fcn.00454960
mov ecx, dword [0x498d58]
add ecx, 0x4b687d01
mov dword [0x498d58], ecx
mov ecx, dword [esp + 0x228]
sub ecx, 1
mov dword [esp + 0x224], ecx
mov dword [esp + 0x124], eax
mov eax, dword [esp + 0x224]
mov ecx, dword [esp + 0x228]
sub ecx, 6
cmp eax, ecx
jl 0x4221a0
mov eax, dword [0x497b58]
xor eax, 0x88c387b5
mov ecx, dword [0x498210]
imul ecx, eax
mov dword [0x498210], ecx
mov eax, dword [esp + 0x224]
movsx eax, byte [esp + eax + 0x95f]
cmp eax, 0x3a
jne 0x422157
mov eax, 0x1eed5492
mov cx, word [0x499e0e]
mov dx, cx
and edx, 0xafff
mov cx, dx
mov word [0x499e0e], cx
mov edx, dword [esp + 0x224]
mov byte [esp + edx + 0x95f], 0
mov word [0x49a006], 0x3eff
mov edx, dword [esp + 0x224]
mov dword [esp + 0x228], edx
mov edx, dword [0x498fe0]
mov esi, edx
inc esi
mov dword [0x498fe0], esi
cmp eax, edx
jle 0x422126
mov eax, 0xfc04387f
mov ecx, dword [0x499030]
cmp eax, ecx
jle 0x422112
mov eax, dword [0x498ca4]
not eax
mov cx, word [0x49a6de]
movsx edx, cx
sub eax, edx
xor eax, 0xe6cd6f01
mov edx, dword [0x498be8]
imul edx, eax
mov dword [0x498be8], edx
jmp 0x422121
mov eax, dword [0x498414]
and eax, 0x21001300
mov dword [0x498414], eax
jmp 0x422126
mov eax, dword [esp + 0x224]
lea ecx, [esp + 0x95f]
lea eax, [eax + ecx + 1]
mov ecx, esp
mov dword [ecx], eax
call fcn.0045598d
mov dword [esp + 0x208], eax
mov dword [0x498938], 0xa0410950
jmp 0x4221a0
mov eax, 0x69f23197
mov ecx, dword [0x498bec]
imul ecx, ecx, 0x643cff69
add ecx, 0xc3aa29ff
cmp eax, ecx
jl 0x422185
mov eax, dword [0x498d74]
xor eax, 0xba1605c9
mov dword [0x498d74], eax
jmp 0x42218a
mov eax, dword [esp + 0x224]
add eax, 0xffffffff
mov dword [esp + 0x224], eax
jmp 0x42202d
mov eax, dword [0x497c94]
add eax, 0x7405c2c
mov dword [0x497c94], eax
mov dword [esp + 0x224], 0
mov eax, dword [esp + 0x224]
cmp eax, dword [esp + 0x228]
jg 0x42233e
mov eax, dword [0x4986b4]
or eax, 0xc9d6ee94
mov dword [0x4986b4], eax
mov eax, dword [esp + 0x224]
mov cl, byte [esp + eax + 0x95f]
mov byte [esp + eax + 0x8b6], cl
mov eax, dword [0x497f08]
add eax, 0x8000302
mov dword [0x497f08], eax
mov eax, dword [esp + 0x224]
movsx eax, byte [esp + eax + 0x8b6]
cmp eax, 0x2f
jne 0x422308
mov ax, word [0x49aa6a]
mov cx, ax
xor ecx, 0x1fb0
mov ax, cx
mov word [0x49aa6a], ax
mov ecx, dword [esp + 0x224]
mov byte [esp + ecx + 0x8b6], 0
mov dword [0x4997c4], 0x610010
mov ecx, dword [esp + 0x224]
mov dword [esp + 0x220], ecx
mov eax, dword [esp + 0x220]
cmp eax, dword [esp + 0x228]
jg 0x4222eb
mov eax, dword [0x4994a0]
mov ecx, eax
inc ecx
mov dword [0x4994a0], ecx
mov ecx, dword [0x499104]
sub eax, ecx
and eax, 0xc6c
mov dx, word [0x49a83e]
mov cx, dx
imul ecx, eax
mov dx, cx
mov word [0x49a83e], dx
mov eax, dword [esp + 0x220]
mov bl, byte [esp + eax + 0x95f]
mov ecx, dword [esp + 0x224]
sub eax, ecx
mov byte [esp + eax + 0x68d], bl
mov dx, word [0x49ab2a]
mov ax, dx
or eax, 0x31ad
mov dx, ax
mov word [0x49ab2a], dx
mov eax, dword [esp + 0x220]
add eax, 1
mov dword [esp + 0x220], eax
jmp 0x422258
mov eax, dword [0x498490]
and eax, 0xd2bd5aba
mov ecx, dword [0x498d0c]
or ecx, eax
mov dword [0x498d0c], ecx
jmp 0x42233e
mov eax, dword [0x4977bc]
mov ecx, eax
dec ecx
mov dword [0x4977bc], ecx
mov ecx, dword [0x4978e0]
lea eax, [eax + ecx + 0x70c8ba9c]
mov dword [0x4978e0], eax
mov eax, dword [esp + 0x224]
add eax, 1
mov dword [esp + 0x224], eax
jmp 0x4221ba
mov eax, dword [0x498384]
mov ecx, eax
inc ecx
mov dword [0x498384], ecx
mov ecx, 0xc60b5f6d
sub ecx, eax
mov eax, dword [0x497bac]
and ecx, eax
mov eax, dword [0x498c74]
mov edx, eax
inc edx
mov dword [0x498c74], edx
cmp ecx, eax
jne 0x422391
mov eax, dword [0x498274]
dec eax
mov dword [0x498274], eax
mov cx, word [0x49abc8]
mov dx, cx
xor edx, eax
mov cx, dx
mov word [0x49abc8], cx
lea eax, [esp + 0x68d]
mov ecx, esp
mov dword [ecx], eax
call fcn.004516e0
mov ecx, dword [esp + 0xa3c]
mov edx, esp
mov dword [edx], ecx
mov dword [esp + 0x120], eax
call fcn.004516e0
mov ecx, dword [esp + 0x120]
add ecx, eax
cmp ecx, 0x1ff
jbe 0x4223dc
mov dword [0x4980bc], 0x860d468c
jmp 0x4241bc
mov eax, dword [0x498af4]
and eax, 0xcaa48c04
mov dword [0x498af4], eax
mov eax, dword [esp + 0xa3c]
mov ecx, esp
mov dword [ecx + 4], eax
lea eax, [esp + 0x68d]
mov dword [ecx], eax
call fcn.00454970
mov ecx, dword [0x497610]
imul ecx, ecx, 0xb7afdd40
mov dword [0x498dd0], ecx
mov dword [esp + 0x220], 0
mov word [0x49ad08], 0xabe5
mov ecx, esp
mov dword [ecx + 4], 5
mov dword [ecx], 0x287
mov dword [esp + 0x11c], eax
call fcn.0043a250
mov dword [esp + 0xa30], eax
mov eax, dword [0x498b34]
mov ecx, eax
inc ecx
mov dword [0x498b34], ecx
mov dx, word [0x499d7a]
movsx ecx, dx
neg ecx
lea eax, [eax + ecx + 1]
mov dword [0x497bc0], eax
mov eax, dword [esp + 0xa30]
mov ecx, esp
mov dword [ecx], eax
lea ecx, [esp + 0x65c]
call fcn.00417a40
sub esp, 4
mov ecx, dword [0x497c5c]
or ecx, 0x98953095
mov dword [0x497c5c], ecx
mov ecx, dword [esp + 0xa30]
mov esi, esp
mov dword [esi + 4], ecx
mov dword [esi], 5
mov dword [esp + 0x118], eax
call fcn.004050b0
mov eax, dword [0x498ef4]
and eax, 0x18574b34
mov dword [0x498ef4], eax
mov eax, dword [esp + 0xa40]
mov ecx, eax
call fcn.00401260
cmp eax, 0
je 0x4227f1
mov eax, dword [0x498210]
mov ecx, eax
inc ecx
mov dword [0x498210], ecx
add eax, 0xc8730af0
mov ecx, dword [0x498040]
or ecx, eax
mov dword [0x498040], ecx
mov eax, esp
mov dword [eax + 4], 0xc
mov dword [eax], 0x53ce
call fcn.0043a250
mov dword [esp + 0xa2c], eax
mov dx, word [0x49a6b0]
movsx eax, dx
or eax, 0xc85725a
mov ecx, dword [0x497c00]
xor ecx, eax
mov dword [0x497c00], ecx
mov ecx, dword [esp + 0xa40]
mov eax, dword [esp + 0xa2c]
mov esi, esp
mov dword [esi], eax
lea eax, [esp + 0x1f0]
mov dword [esp + 0x114], ecx
mov ecx, eax
mov dword [esp + 0x110], eax
call fcn.00416b60
sub esp, 4
mov ecx, esp
mov esi, dword [esp + 0x110]
mov dword [ecx], esi
mov dword [ecx + 4], 0
mov ecx, dword [esp + 0x114]
mov dword [esp + 0x10c], eax
call fcn.00432810
sub esp, 8
mov dword [esp + 0x224], eax
mov ecx, dword [esp + 0x110]
call fcn.0041ddd0
mov dx, word [0x49a7e2]
mov ax, dx
and eax, 0x54c
mov dx, ax
mov word [0x49a7e2], dx
mov eax, dword [esp + 0xa2c]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 0xc
call fcn.004050b0
mov eax, dword [0x499944]
and eax, 0xe01f0897
mov dword [0x499944], eax
cmp dword [esp + 0x224], 0
jne 0x4227b5
mov eax, dword [0x497890]
and eax, 0x6962c467
mov dword [0x497890], eax
mov dword [esp + 0x220], 1
mov eax, dword [0x4981b0]
mov ecx, dword [0x4987c4]
mov edx, ecx
dec edx
mov dword [0x4987c4], edx
xor eax, ecx
mov ecx, dword [0x4995b4]
or ecx, eax
mov dword [0x4995b4], ecx
mov eax, dword [esp + 0xa40]
mov ecx, esp
mov dword [ecx], 0
mov ecx, eax
mov dword [esp + 0x108], eax
call fcn.0044f830
sub esp, 4
mov ecx, esp
mov dword [ecx], eax
mov dword [ecx + 4], 0xb
mov ecx, dword [esp + 0x108]
call fcn.00409070
sub esp, 8
mov ecx, dword [0x498d74]
sar ecx, 7
imul ecx, ecx, 0x4f5191ec
xor ecx, 0x6e3c4bef
cmp ecx, 0xd37567ae
mov dword [esp + 0x104], eax
jg 0x4226af
mov ax, word [0x499d20]
movsx ecx, ax
mov edx, dword [0x49892c]
sub ecx, edx
xor ecx, 0x6583ed9
mov dword [0x4987a0], ecx
mov eax, esp
mov dword [eax + 4], 6
mov dword [eax], 0xa0c
call fcn.0043a250
mov dword [esp + 0xa28], eax
mov cx, word [0x49a726]
mov ax, cx
dec eax
mov dx, ax
mov word [0x49a726], dx
movsx eax, cx
mov dword [0x498e10], eax
mov eax, dword [esp + 0xa28]
mov esi, esp
mov dword [esi], eax
lea ecx, [esp + 0x65c]
call fcn.00417a40
sub esp, 4
mov ecx, dword [0x497db0]
add ecx, 0x3d0d05da
mov dword [0x497db0], ecx
mov ecx, dword [esp + 0xa28]
mov esi, esp
mov dword [esi + 4], ecx
mov dword [esi], 6
mov dword [esp + 0x100], eax
call fcn.004050b0
mov eax, dword [0x497aec]
mov ecx, dword [0x4988c4]
add ecx, 0x6c1283e4
and eax, ecx
cmp eax, 0xa1032240
jne 0x422798
mov eax, 0x942ef1c1
mov cx, word [0x499c2c]
mov dx, cx
dec edx
mov cx, dx
mov word [0x499c2c], cx
movsx edx, cx
cmp eax, edx
jge 0x422793
mov eax, dword [0x49952c]
mov cx, word [0x499c68]
movsx edx, cx
or eax, edx
mov edx, dword [0x497840]
and edx, eax
mov dword [0x497840], edx
jmp 0x4227b0
mov ax, word [0x49a558]
mov cx, ax
and ecx, 0x490f
mov ax, cx
mov word [0x49a558], ax
jmp 0x4227b5
mov eax, dword [0x497888]
dec eax
mov dword [0x497888], eax
add eax, 0x27b579e7
cmp eax, 0x60a109a0
jne 0x4227ec
mov eax, dword [0x497ddc]
sar eax, 8
or eax, 0x868e835f
mov ecx, dword [0x4995fc]
imul ecx, eax
mov dword [0x4995fc], ecx
jmp 0x4227f1
mov eax, 0xdb7fffbf
mov cx, word [0x499b9a]
mov dx, cx
inc edx
mov si, dx
mov word [0x499b9a], si
movsx edx, cx
and edx, 0x6fa8f5d5
mov edi, dword [0x499720]
imul edi, edx
mov dword [0x499720], edi
mov edx, esp
lea edi, [esp + 0x68d]
mov dword [edx], edi
lea edx, [esp + 0x1dc]
mov ecx, edx
mov dword [esp + 0xfc], eax
mov dword [esp + 0xf8], edx
call fcn.004400e0
sub esp, 4
mov ecx, esp
mov edx, dword [esp + 0xf8]
mov dword [ecx], edx
lea ecx, [esp + 0x65c]
mov dword [esp + 0xf4], ecx
mov dword [esp + 0xf0], eax
call fcn.0042c680
sub esp, 4
mov ecx, dword [esp + 0xf8]
mov dword [esp + 0xec], eax
call fcn.0043f200
mov eax, dword [0x49922c]
add eax, 0x2ada757
mov dword [0x49922c], eax
mov eax, esp
mov dword [eax + 4], 0x32
mov dword [eax], 0x725d
call fcn.0043a250
mov dword [esp + 0xa24], eax
mov eax, dword [0x49934c]
add eax, 0x976d484a
mov dword [0x49934c], eax
mov eax, dword [esp + 0xa24]
mov ecx, esp
mov dword [ecx], eax
lea eax, [esp + 0x1c8]
mov ecx, eax
mov dword [esp + 0xe8], eax
call fcn.004400e0
sub esp, 4
mov ecx, esp
mov edx, dword [esp + 0xe8]
mov dword [ecx], edx
mov ecx, dword [esp + 0xf4]
mov dword [esp + 0xe4], eax
call fcn.0042c680
sub esp, 4
mov ecx, dword [esp + 0xe8]
mov dword [esp + 0xe0], eax
call fcn.0043f200
mov eax, dword [0x498358]
mov ecx, dword [esp + 0xfc]
cmp ecx, eax
je 0x42293b
mov eax, dword [0x498cb4]
xor eax, 0xf83d53ae
mov dword [0x498cb4], eax
mov eax, 0x97c7fbd0
mov ecx, dword [esp + 0xa24]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 0x32
mov dword [esp + 0xdc], eax
call fcn.004050b0
mov si, word [0x499cf6]
mov ax, si
add eax, 0xd3be88ed
mov si, word [0x499d1a]
mov cx, si
xor ecx, eax
mov si, cx
mov word [0x499d1a], si
mov eax, esp
lea ecx, [esp + 0x8b6]
mov dword [eax], ecx
lea eax, [esp + 0x1b4]
mov ecx, eax
mov dword [esp + 0xd8], eax
call fcn.004400e0
sub esp, 4
mov ecx, esp
mov edx, dword [esp + 0xd8]
mov dword [ecx], edx
lea ecx, [esp + 0x65c]
mov dword [esp + 0xd4], eax
call fcn.0042c680
sub esp, 4
mov ecx, dword [esp + 0xd8]
mov dword [esp + 0xd0], eax
call fcn.0043f200
mov eax, dword [0x498a48]
xor eax, 0xffffffff
mov ecx, dword [esp + 0xdc]
cmp ecx, eax
jle 0x422a4a
mov eax, dword [0x49980c]
mov ecx, 0x992401f
sub ecx, eax
mov eax, dword [0x497620]
mov edx, eax
dec edx
mov dword [0x497620], edx
and ecx, eax
cmp ecx, 0x1b11ce0d
jl 0x422a45
mov ax, word [0x499eca]
mov cx, ax
mov edx, dword [0x498a14]
add edx, 0xd982f564
xor ecx, edx
mov ax, word [0x49aa38]
mov dx, ax
imul edx, ecx
mov ax, dx
mov word [0x49aa38], ax
jmp 0x422a62
mov ax, word [0x499e20]
mov cx, ax
add ecx, 0x79b46fc
mov ax, cx
mov word [0x499e20], ax
cmp dword [esp + 0x220], 0
je 0x422d16
mov eax, 0x9e28bdd6
mov word [0x49a744], 0xd323
mov ecx, esp
mov dword [ecx + 4], 0x44
mov dword [ecx], 0x2383
mov dword [esp + 0xcc], eax
call fcn.0043a250
mov dword [esp + 0xa20], eax
mov eax, dword [0x497b8c]
mov ecx, dword [0x497640]
add eax, ecx
mov dx, word [0x49a59c]
mov cx, dx
inc ecx
mov dx, cx
mov word [0x49a59c], dx
movsx ecx, dx
and eax, ecx
mov ecx, dword [esp + 0xcc]
cmp ecx, eax
jg 0x422b0b
mov eax, 0x12df318b
mov cx, word [0x49aa06]
movsx edx, cx
xor edx, 0xe349ca3f
cmp eax, edx
jl 0x422b06
mov eax, dword [0x498f30]
mov ecx, dword [0x49891c]
and ecx, eax
mov dword [0x49891c], ecx
jmp 0x422b0b
mov eax, 0x7e6ecc24
mov ecx, dword [esp + 0xa20]
mov edx, esp
mov dword [edx], ecx
lea ecx, [esp + 0x1a0]
mov dword [esp + 0xc8], ecx
mov dword [esp + 0xc4], eax
call fcn.004400e0
sub esp, 4
mov ecx, esp
mov edx, dword [esp + 0xc8]
mov dword [ecx], edx
lea ecx, [esp + 0x65c]
mov dword [esp + 0xc0], eax
call fcn.0042c680
sub esp, 4
mov ecx, dword [esp + 0xc8]
mov dword [esp + 0xbc], eax
call fcn.0043f200
mov eax, dword [0x4999e0]
mov ecx, dword [esp + 0xc4]
cmp ecx, eax
jl 0x422bb7
mov ax, word [0x49a7c4]
mov cx, ax
dec ecx
mov ax, cx
mov word [0x49a7c4], ax
movsx ecx, ax
cmp ecx, 0xc60ff582
jne 0x422bb2
mov eax, dword [0x497be0]
imul eax, eax, 0x4f0f3aa3
mov dword [0x497be0], eax
jmp 0x422bb7
mov eax, esp
mov dword [eax + 4], 3
mov dword [eax], 0x4f03
call fcn.0043a250
mov dword [esp + 0xa1c], eax
mov eax, dword [0x49763c]
mov ecx, eax
dec ecx
mov dword [0x49763c], ecx
imul eax, eax, 0x55caa7bb
mov ecx, dword [0x4993a0]
dec ecx
mov dword [0x4993a0], ecx
sub eax, ecx
cmp eax, 0x846b7a9d
je 0x422c13
mov eax, dword [0x498aa8]
mov ecx, dword [0x4976c0]
add ecx, eax
mov dword [0x4976c0], ecx
mov eax, dword [esp + 0xa20]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 0x44
call fcn.004050b0
mov eax, dword [0x4984e4]
or eax, 0xa282ce1f
mov dword [0x4984e4], eax
mov ecx, dword [esp + 0xa40]
call fcn.00401260
mov ecx, dword [esp + 0xa1c]
mov edx, esp
mov dword [edx + 8], eax
mov dword [edx + 4], ecx
lea eax, [esp + 0x233]
mov dword [edx], eax
mov dword [esp + 0xb8], eax
call fcn.004552a0
mov si, word [0x49a386]
mov cx, si
and ecx, 0x522a
mov si, cx
mov word [0x49a386], si
mov ecx, dword [esp + 0xa1c]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 3
mov dword [esp + 0xb4], eax
call fcn.004050b0
mov eax, dword [0x498470]
add eax, 0xd6ebc116
mov dword [0x498470], eax
mov eax, esp
mov ecx, dword [esp + 0xb8]
mov dword [eax], ecx
lea eax, [esp + 0x18c]
mov ecx, eax
mov dword [esp + 0xb0], eax
call fcn.004400e0
sub esp, 4
mov ecx, esp
mov edx, dword [esp + 0xb0]
mov dword [ecx], edx
lea ecx, [esp + 0x65c]
mov dword [esp + 0xac], eax
call fcn.0042c680
sub esp, 4
mov ecx, dword [esp + 0xb0]
mov dword [esp + 0xa8], eax
call fcn.0043f200
mov eax, dword [0x4990b0]
add eax, 0x3d1a198e
mov dword [0x4990b0], eax
mov eax, dword [0x499304]
imul eax, eax, 0xe78b24fa
cmp eax, 0x13e1fec5
jne 0x422d50
mov eax, dword [0x4982bc]
sar eax, 1
add eax, 0x482a3cb3
and eax, 0xc631eb91
mov ecx, dword [0x498bfc]
or ecx, eax
mov dword [0x498bfc], ecx
jmp 0x422d5f
mov eax, dword [0x498350]
and eax, 0x9080018
mov dword [0x498350], eax
mov eax, esp
mov dword [eax + 4], 5
mov dword [eax], 0x32f5
call fcn.0043a250
mov dword [esp + 0xa18], eax
mov cx, word [0x499bdc]
mov ax, cx
add eax, 0x427a12a7
mov cx, ax
mov word [0x499bdc], cx
mov eax, dword [esp + 0xa18]
mov edx, esp
mov dword [edx], eax
lea eax, [esp + 0x178]
mov ecx, eax
mov dword [esp + 0xa4], eax
call fcn.004400e0
sub esp, 4
mov ecx, esp
mov edx, dword [esp + 0xa4]
mov dword [ecx], edx
lea ecx, [esp + 0x65c]
mov dword [esp + 0xa0], eax
call fcn.0042c680
sub esp, 4
mov ecx, dword [esp + 0xa4]
mov dword [esp + 0x9c], eax
call fcn.0043f200
mov dword [0x499758], 0xe3637d3c
mov eax, dword [esp + 0xa18]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 5
call fcn.004050b0
mov eax, dword [0x499a6c]
xor eax, 0xfeffff7e
mov dword [0x499a6c], eax
cmp dword [esp + 0x220], 0
je 0x422eab
mov eax, 0x45eb9cca
mov ecx, dword [0x49830c]
shl ecx, 4
cmp eax, ecx
jge 0x422e4d
mov dword [0x499ac8], 0xb35e407d
jmp 0x422e70
mov eax, dword [0x4993fc]
not eax
mov ecx, dword [0x4980f4]
xor ecx, 0x4c3cb6a7
or eax, ecx
mov ecx, dword [0x4982f8]
sub ecx, eax
mov dword [0x4982f8], ecx
mov eax, dword [esp + 0xa40]
mov ecx, esp
mov dword [ecx], eax
lea ecx, [esp + 0x65c]
call fcn.0042c680
sub esp, 4
mov dx, word [0x49a5c2]
mov cx, dx
add ecx, 0x8fc4287
mov dx, cx
mov word [0x49a5c2], dx
mov dword [esp + 0x98], eax
mov dword [0x498358], 0xeffa94f6
mov eax, dword [0x49742c]
mov ecx, esp
lea edx, [esp + 0x8b6]
mov dword [ecx], edx
call eax
sub esp, 4
mov dword [esp + 0x22c], eax
mov eax, dword [0x4988f8]
xor eax, 0x3d2b3476
mov dword [0x4988f8], eax
cmp dword [esp + 0x22c], 0
jne 0x422efd
mov dword [0x4991c0], 0x1ee0801d
jmp 0x4241bc
mov eax, 0x30800a0
mov ecx, dword [0x497758]
or ecx, 0x673e549e
mov dword [0x497758], ecx
xorps xmm0, xmm0
movaps xmmword [esp + 0x670], xmm0
mov ecx, dword [0x498570]
mov dx, word [0x49acd2]
movsx esi, dx
xor ecx, esi
or ecx, 0x3cb4fc2d
cmp eax, ecx
jl 0x422f5f
mov eax, dword [0x49773c]
mov cx, word [0x49ac0a]
mov dx, cx
xor edx, eax
mov cx, dx
mov word [0x49ac0a], cx
jmp 0x422f7f
mov eax, dword [0x4976f4]
and eax, 0x1e37
mov cx, word [0x49ace6]
mov dx, cx
xor edx, eax
mov cx, dx
mov word [0x49ace6], cx
mov word [esp + 0x670], 2
mov eax, dword [0x4990dc]
mov ecx, dword [0x497adc]
mov edx, ecx
dec edx
mov dword [0x497adc], edx
lea eax, [eax + ecx - 0x6026f19e]
mov ecx, dword [0x499af0]
sub ecx, eax
mov dword [0x499af0], ecx
mov eax, dword [0x497434]
mov ecx, dword [0x497438]
mov edx, dword [esp + 0x22c]
mov edx, dword [edx + 0xc]
mov edx, dword [edx]
mov edx, dword [edx]
mov dword [esp + 0x174], edx
mov edx, dword [esp + 0x174]
mov esi, esp
mov dword [esi], edx
mov dword [esp + 0x94], eax
call ecx
sub esp, 4
mov ecx, esp
mov dword [ecx], eax
mov eax, dword [esp + 0x94]
call eax
sub esp, 4
mov dword [esp + 0x674], eax
mov eax, dword [0x49984c]
dec eax
mov dword [0x49984c], eax
mov di, word [0x49a06a]
movsx ecx, di
xor eax, ecx
xor eax, 0x42828db
mov ecx, dword [0x4999f0]
and ecx, 0x11f787a9
and ecx, 0x53dee7c6
cmp eax, ecx
jge 0x4230a8
mov eax, dword [0x497ab8]
shl eax, 6
or eax, 0xd1481432
mov cx, word [0x49a2ea]
movsx edx, cx
or edx, 0xa15a4e35
cmp eax, edx
jg 0x423074
mov eax, dword [0x498a50]
mov ecx, dword [0x498ec0]
xor eax, ecx
not eax
mov dword [0x498ec0], eax
jmp 0x4230a3
mov eax, 0x607719fc
mov ecx, dword [0x499060]
dec ecx
mov dword [0x499060], ecx
and ecx, 0xe0b2d5a7
cmp eax, ecx
je 0x423099
jmp 0x42309e
jmp 0x42309e
jmp 0x4230a3
jmp 0x423114
mov eax, 0x1ca551e2
mov ecx, dword [0x499610]
and ecx, 0x1f330999
mov edx, dword [0x497610]
mov esi, edx
dec esi
mov dword [0x497610], esi
sub eax, edx
and eax, 0x544e0e4
cmp ecx, eax
je 0x423100
mov eax, 0x47def261
mov ecx, dword [0x499338]
inc ecx
mov dword [0x499338], ecx
cmp eax, ecx
je 0x4230f6
jmp 0x4230fb
jmp 0x4230fb
jmp 0x42310f
mov eax, dword [0x497e7c]
xor eax, 0x49e69000
mov dword [0x497e7c], eax
jmp 0x423114
mov eax, dword [0x497430]
movzx ecx, word [esp + 0x208]
mov edx, esp
mov dword [edx], ecx
call eax
sub esp, 4
mov word [esp + 0x672], ax
mov dword [0x497794], 0xac9e1df7
cmp dword [esp + 0xa44], 0
je 0x4232af
mov eax, dword [0x497d68]
and eax, 0x68b57d38
mov dword [0x497d68], eax
mov eax, dword [esp + 0xa44]
mov ecx, 0x10624dd3
mul ecx
shr edx, 6
mov eax, esp
mov dword [eax + 4], edx
lea ecx, [esp + 0x670]
mov dword [eax], ecx
call fcn.00444ec0
mov dword [esp + 0x688], eax
mov eax, dword [0x4993d8]
or eax, 0x40360098
mov dword [0x4993d8], eax
cmp dword [esp + 0x688], 0
jge 0x4231b5
mov eax, dword [0x4986e0]
add eax, 0xede35f71
mov dword [0x4986e0], eax
jmp 0x4241bc
mov eax, dword [0x497dd4]
add eax, 0xfcdf739d
or eax, 0x5855463e
mov ecx, dword [0x498670]
xor ecx, eax
mov dword [0x498670], ecx
mov eax, dword [0x49744c]
mov ecx, dword [esp + 0x688]
mov edx, esp
lea esi, [esp + 0xa44]
mov dword [edx + 0xc], esi
mov dword [edx], ecx
mov dword [edx + 0x10], 4
mov dword [edx + 8], 0x1006
mov dword [edx + 4], 0xffff
mov dword [esp + 0x90], esi
call eax
sub esp, 0x14
mov di, word [0x49a6fe]
movsx ecx, di
or ecx, 0xd57beffb
mov edx, dword [0x4995b4]
xor edx, ecx
mov dword [0x4995b4], edx
mov ecx, dword [0x49744c]
mov edx, dword [esp + 0x688]
mov esi, esp
mov ebx, dword [esp + 0x90]
mov dword [esi + 0xc], ebx
mov dword [esi], edx
mov dword [esi + 0x10], 4
mov dword [esi + 8], 0x1005
mov dword [esi + 4], 0xffff
mov dword [esp + 0x8c], eax
call ecx
sub esp, 0x14
mov di, word [0x499c02]
mov cx, di
mov edx, ecx
inc edx
mov di, dx
mov word [0x499c02], di
mov edx, dword [0x49778c]
mov esi, 0x7c630a21
sub esi, edx
xor ecx, esi
mov di, word [0x49a0da]
mov dx, di
and edx, ecx
mov di, dx
mov word [0x49a0da], di
mov dword [esp + 0x88], eax
jmp 0x423386
mov eax, dword [0x49948c]
and eax, 0x84134e2
mov dword [0x49948c], eax
mov eax, dword [0x497450]
mov ecx, esp
mov dword [ecx + 8], 6
mov dword [ecx + 4], 1
mov dword [ecx], 2
call eax
sub esp, 0xc
mov dword [esp + 0x688], eax
mov eax, dword [0x4988e8]
sar eax, 1
mov ecx, dword [0x4994f4]
xor eax, ecx
xor eax, 0x78a15058
mov dword [0x4994f4], eax
cmp dword [esp + 0x688], 0xffffffff
jne 0x423320
mov eax, dword [0x4979e0]
xor eax, 0xa0100001
mov dword [0x4979e0], eax
jmp 0x4241bc
lea eax, [esp + 0x670]
mov ecx, dword [0x497aa8]
or ecx, 0x26037d95
mov dword [0x497aa8], ecx
mov ecx, dword [0x497428]
mov edx, dword [esp + 0x688]
mov esi, esp
mov dword [esi + 4], eax
mov dword [esi], edx
mov dword [esi + 8], 0x10
call ecx
sub esp, 0xc
cmp eax, 0xffffffff
jne 0x423377
mov eax, dword [0x498078]
imul eax, eax, 0x4001be7a
mov dword [0x498078], eax
jmp 0x42414d
mov eax, dword [0x4981ec]
xor eax, 0x7a729bc0
mov dword [0x4981ec], eax
mov eax, 0x199b1a4e
mov cx, word [0x49a8a8]
mov dx, cx
mov esi, edx
inc esi
mov cx, si
mov word [0x49a8a8], cx
mov cx, word [0x49a4d0]
mov si, cx
lea edx, [esi + edx + 1]
mov cx, dx
mov word [0x49a4d0], cx
mov edx, dword [0x497448]
lea esi, [esp + 0x65c]
mov ecx, esi
mov dword [esp + 0x84], eax
mov dword [esp + 0x80], edx
mov dword [esp + 0x7c], esi
call fcn.00401260
mov ecx, dword [esp + 0x7c]
mov dword [esp + 0x78], eax
call fcn.0043e950
mov ecx, dword [esp + 0x688]
mov edx, esp
mov esi, dword [esp + 0x78]
mov dword [edx + 8], esi
mov dword [edx + 4], eax
mov dword [edx], ecx
mov dword [edx + 0xc], 0
mov eax, dword [esp + 0x80]
call eax
sub esp, 0x10
mov dword [esp + 0x684], eax
mov di, word [0x49a1d2]
mov ax, di
inc eax
mov bx, ax
mov word [0x49a1d2], bx
movsx eax, di
xor eax, 0x1aa44695
mov ecx, dword [esp + 0x84]
cmp ecx, eax
jne 0x423452
mov dword [0x497f9c], 0xa209d4e0
lea eax, [esp + 0x65c]
mov ecx, dword [esp + 0x684]
mov dword [esp + 0x74], ecx
mov ecx, eax
call fcn.00401260
mov ecx, dword [esp + 0x74]
cmp ecx, eax
jae 0x42349c
mov ax, word [0x49a1a2]
movsx ecx, ax
sar ecx, 3
imul ecx, ecx, 0xd2e82efa
mov edx, dword [0x498088]
or edx, ecx
mov dword [0x498088], edx
jmp 0x42414d
mov dword [0x497e90], 0x3e2cc90f
mov ecx, dword [esp + 0xa40]
call fcn.0040ada0
mov ecx, dword [0x49978c]
add ecx, 0x7cd21f98
mov dword [0x49978c], ecx
mov eax, dword [0x498c50]
dec eax
mov dword [0x498c50], eax
or eax, 0x919e152e
mov ecx, dword [0x498a40]
xor ecx, eax
mov dword [0x498a40], ecx
mov eax, dword [0x497440]
mov ecx, dword [esp + 0x688]
mov edx, esp
lea esi, [esp + 0x233]
mov dword [edx + 4], esi
mov dword [edx], ecx
mov dword [edx + 0xc], 0
mov dword [edx + 8], 0x400
call eax
sub esp, 0x10
mov dword [esp + 0x684], eax
mov eax, dword [0x498b58]
add eax, 0x29952f14
mov dword [0x498b58], eax
cmp dword [esp + 0x684], 0
jle 0x423556
mov eax, dword [esp + 0x218]
mov ecx, dword [esp + 0x21c]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], eax
call fcn.004266a0
cmp eax, 0
je 0x42356a
mov eax, dword [0x497d30]
add eax, 0x27c9851e
mov dword [0x497d30], eax
jmp 0x423f4d
mov eax, dword [0x4983bc]
not eax
mov ecx, dword [0x498c48]
imul ecx, eax
shl ecx, 7
mov dword [0x49821c], ecx
mov eax, dword [esp + 0xa40]
mov ecx, eax
mov dword [esp + 0x70], eax
call fcn.00401260
mov ecx, dword [esp + 0x684]
add eax, ecx
mov ecx, esp
mov dword [ecx], eax
mov dword [ecx + 4], 0
mov ecx, dword [esp + 0x70]
call fcn.00401740
sub esp, 8
mov dx, word [0x49a60a]
mov ax, dx
mov dx, word [0x49a356]
mov cx, dx
add ecx, eax
mov dx, cx
mov word [0x49a356], dx
mov eax, dword [esp + 0xa40]
mov ecx, eax
call fcn.0044a210
cmp eax, 0
jne 0x42361b
mov ax, word [0x49a1fe]
mov cx, ax
dec ecx
mov ax, cx
mov word [0x49a1fe], ax
movsx ecx, ax
mov edx, dword [0x497ff4]
xor ecx, edx
xor ecx, 0x40cc03f1
mov dword [0x497ff4], ecx
jmp 0x423f4d
mov eax, 0xb27e926a
mov ecx, dword [0x498dd8]
add ecx, 0x20befc11
mov dword [0x498dd8], ecx
mov ecx, dword [esp + 0xa40]
mov edx, dword [esp + 0x684]
mov esi, esp
mov dword [esi + 4], edx
lea edx, [esp + 0x233]
mov dword [esi], edx
mov dword [esp + 0x6c], eax
call fcn.0044d040
sub esp, 8
mov ecx, dword [0x498694]
inc ecx
mov dword [0x498694], ecx
mov di, word [0x49a708]
movsx edx, di
imul edx, edx, 0x5ac733a0
or ecx, edx
mov edx, dword [0x497ce0]
shl edx, 0xa
mov esi, dword [esp + 0x6c]
sub esi, edx
cmp ecx, esi
mov dword [esp + 0x68], eax
jne 0x4236c4
mov eax, dword [0x498d2c]
mov ecx, eax
inc ecx
mov dword [0x498d2c], ecx
mov ecx, dword [0x497db8]
dec ecx
mov dword [0x497db8], ecx
sub eax, ecx
and eax, 0xac0f1202
mov ecx, dword [0x497cd8]
sub ecx, eax
mov dword [0x497cd8], ecx
cmp dword [esp + 0x210], 0
jge 0x4239a1
mov eax, dword [0x497bcc]
imul eax, eax, 0xd963a100
mov dword [0x497bcc], eax
mov eax, esp
mov dword [eax + 4], 5
mov dword [eax], 0x32f5
call fcn.0043a250
mov dword [esp + 0xa14], eax
mov eax, dword [0x4990a0]
xor eax, 0x87444ba
mov dword [0x4990a0], eax
mov ecx, dword [esp + 0xa40]
mov eax, dword [esp + 0xa14]
mov edx, esp
mov dword [edx], eax
lea eax, [esp + 0x160]
mov dword [esp + 0x64], ecx
mov ecx, eax
mov dword [esp + 0x60], eax
call fcn.00416b60
sub esp, 4
mov ecx, esp
mov edx, dword [esp + 0x60]
mov dword [ecx], edx
mov dword [ecx + 4], 0
mov ecx, dword [esp + 0x64]
mov dword [esp + 0x5c], eax
call fcn.00432810
sub esp, 8
mov dword [esp + 0x210], eax
mov ecx, dword [esp + 0x60]
call fcn.0041ddd0
mov dword [0x497ef4], 0x98891dfb
mov eax, dword [esp + 0xa14]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 5
call fcn.004050b0
mov si, word [0x49a3a0]
movsx eax, si
not eax
mov ecx, dword [0x497f7c]
add ecx, eax
mov dword [0x497f7c], ecx
cmp dword [esp + 0x210], 0
jl 0x423997
mov eax, dword [0x497cc4]
xor eax, 0xdc41d6f
mov dword [0x497cc4], eax
mov eax, dword [esp + 0x210]
add eax, 4
mov dword [esp + 0x210], eax
mov cx, word [0x49a198]
mov ax, cx
xor eax, 0xcb8c
mov cx, ax
mov word [0x49a198], cx
mov eax, dword [esp + 0xa40]
mov edx, esp
mov dword [edx], eax
call fcn.0043e4c0
mov dword [esp + 0x20c], eax
mov cx, word [0x49a572]
movsx eax, cx
mov edx, dword [0x4983d8]
add edx, 0x519de0de
cmp eax, edx
jg 0x42382d
mov eax, dword [0x499028]
imul eax, eax, 0xa0a52d82
mov dword [0x499028], eax
cmp dword [esp + 0x20c], 0
jge 0x42396f
mov eax, dword [0x498694]
imul eax, eax, 0xe61b5068
mov cx, word [0x49ad04]
mov dx, cx
add edx, eax
mov cx, dx
mov word [0x49ad04], cx
mov eax, esp
mov dword [eax + 4], 0xb
mov dword [eax], 0x58e9
call fcn.0043a250
mov dword [esp + 0xa10], eax
mov eax, dword [0x498904]
add eax, 0x2e171aca
mov dword [0x498904], eax
mov ecx, dword [esp + 0xa40]
mov eax, dword [esp + 0xa10]
mov edx, esp
mov dword [edx], eax
lea eax, [esp + 0x14c]
mov dword [esp + 0x58], ecx
mov ecx, eax
mov dword [esp + 0x54], eax
call fcn.00416b60
sub esp, 4
mov ecx, esp
mov edx, dword [esp + 0x54]
mov dword [ecx], edx
mov dword [ecx + 4], 0
mov ecx, dword [esp + 0x58]
mov dword [esp + 0x50], eax
call fcn.00432810
sub esp, 8
mov dword [esp + 0x684], eax
mov ecx, dword [esp + 0x54]
call fcn.0041ddd0
mov eax, dword [0x49990c]
imul eax, eax, 0xb473b1dd
mov dword [0x49990c], eax
mov eax, dword [esp + 0xa10]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 0xb
call fcn.004050b0
mov eax, dword [0x498abc]
add eax, 0x72887ae0
mov dword [0x498abc], eax
cmp dword [esp + 0x684], 0
jl 0x423965
mov eax, dword [0x4993bc]
not eax
mov ecx, dword [0x499238]
mov edx, ecx
dec edx
mov dword [0x499238], edx
xor ecx, 0x6bd47d92
cmp eax, ecx
je 0x423960
mov ax, word [0x499cde]
mov cx, ax
add ecx, 0x25082000
mov ax, cx
mov word [0x499cde], ax
jmp 0x423f4d
mov dword [0x4991b4], 0xe28421aa
mov eax, dword [0x498708]
shl eax, 4
cmp eax, 0x8f062a4
jg 0x423992
mov eax, dword [0x497f34]
imul eax, eax, 0xca55997c
mov dword [0x497f34], eax
jmp 0x423997
mov dword [0x4981d4], 0xde7967fc
mov eax, 0x59f08b97
mov ecx, dword [0x498a70]
cmp eax, ecx
jl 0x4239be
mov dword [0x498f94], 0xc79b876e
cmp dword [esp + 0x20c], 0
jl 0x423a37
mov eax, dword [0x499620]
sar eax, 1
imul eax, eax, 0xdc00f805
mov ecx, dword [0x497f74]
or eax, ecx
mov ecx, dword [0x499ab8]
or ecx, eax
mov dword [0x499ab8], ecx
mov eax, dword [esp + 0xa40]
mov ecx, eax
call fcn.00401260
sub eax, dword [esp + 0x210]
cmp eax, dword [esp + 0x20c]
jb 0x423a20
mov dword [0x498770], 0x2f60bb35
jmp 0x423f4d
mov eax, dword [0x4994ac]
mov ecx, dword [0x497754]
and eax, ecx
and eax, 0x24dd38f3
mov dword [0x497754], eax
mov eax, dword [0x497cf0]
dec eax
mov dword [0x497cf0], eax
mov ecx, dword [0x49841c]
sub ecx, eax
mov dword [0x49841c], ecx
cmp dword [esp + 0xa48], 0
je 0x423e45
test byte [esp + 0x207], 1
jne 0x423e45
mov eax, 0x4a33fa65
mov ecx, dword [0x4982cc]
xor ecx, 0xffffffff
sub eax, ecx
or eax, 0xed3e85e4
cmp eax, 0x8525ac61
jl 0x423a9b
mov eax, dword [0x498174]
add eax, 0x34b0f548
mov dword [0x498174], eax
mov eax, dword [esp + 0xa40]
mov ecx, eax
call fcn.00401260
cmp eax, 0x4000
jbe 0x423df3
mov ax, word [0x49acc0]
movsx ecx, ax
not ecx
or ecx, 0x22a39dee
mov edx, dword [0x498930]
xor edx, ecx
mov dword [0x498930], edx
mov byte [esp + 0x207], 1
mov ecx, dword [0x498380]
mov edx, dword [0x498d58]
mov esi, edx
dec esi
mov dword [0x498d58], esi
add edx, 0x4ce061ca
xor ecx, edx
mov edx, dword [0x498ad4]
inc edx
mov dword [0x498ad4], edx
mov esi, dword [0x497658]
mov edi, esi
inc edi
mov dword [0x497658], edi
xor edx, esi
cmp ecx, edx
jle 0x423b54
mov ax, word [0x499ca4]
movsx ecx, ax
shl ecx, 8
mov edx, dword [0x497618]
mov esi, edx
inc esi
mov dword [0x497618], esi
sub ecx, edx
and ecx, 0xa82238ad
mov edx, dword [0x498eac]
or edx, ecx
mov dword [0x498eac], edx
jmp 0x423b9b
mov eax, 0xdb7fbf9f
mov ecx, dword [0x49962c]
dec ecx
mov dword [0x49962c], ecx
and ecx, 0xa9a93d2e
cmp eax, ecx
jle 0x423b96
mov eax, dword [0x498aa0]
xor eax, 0xffffffff
cmp eax, 0x1052ce8e
jle 0x423b8c
jmp 0x423b91
jmp 0x423b91
jmp 0x423b96
jmp 0x423b9b
mov eax, dword [esp + 0xa40]
mov ecx, esp
mov dword [ecx], eax
lea ecx, [esp + 0x138]
call fcn.0043bf80
sub esp, 4
mov ecx, dword [0x498f38]
add ecx, 0xffdfffdf
mov dword [0x498f38], ecx
cmp dword [esp + 0x210], 0
mov dword [esp + 0x4c], eax
jl 0x423c76
mov ax, word [0x49a544]
mov cx, ax
imul ecx, ecx, 0x4257917c
mov ax, cx
mov word [0x49a544], ax
mov ecx, dword [esp + 0x210]
mov edx, esp
mov dword [edx], 0
lea edx, [esp + 0x138]
mov dword [esp + 0x48], ecx
mov ecx, edx
mov dword [esp + 0x44], edx
call fcn.0044f830
sub esp, 4
mov ecx, esp
mov edx, dword [esp + 0x48]
mov dword [ecx + 4], edx
mov dword [ecx], eax
mov ecx, dword [esp + 0x44]
call fcn.00409070
sub esp, 8
mov si, word [0x499c46]
movsx ecx, si
xor ecx, 0xffffffff
cmp ecx, 0xd6ec73e4
mov dword [esp + 0x40], eax
jl 0x423c71
mov ax, word [0x499d14]
mov cx, ax
inc ecx
mov ax, cx
mov word [0x499d14], ax
movsx ecx, ax
mov edx, dword [0x498dcc]
sub edx, ecx
mov dword [0x498dcc], edx
jmp 0x423c76
mov eax, 0xc4f20da7
mov ecx, dword [0x4991e8]
dec ecx
mov dword [0x4991e8], ecx
mov edx, dword [0x498288]
inc edx
mov dword [0x498288], edx
imul ecx, edx
mov edx, dword [0x4984d4]
xor edx, 0xffffffff
and ecx, edx
cmp eax, ecx
jg 0x423cc6
mov eax, dword [0x49789c]
sar eax, 6
or eax, 0x58ac59bd
mov ecx, dword [0x49861c]
add ecx, eax
mov dword [0x49861c], ecx
lea eax, [esp + 0x138]
lea ecx, [esp + 0x8b6]
mov edx, dword [esp + 0xa48]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call fcn.0041b920
cmp eax, 0
jne 0x423d74
mov ax, word [0x49a02e]
movsx ecx, ax
sar ecx, 2
sub ecx, 0x43586424
cmp ecx, 0xda6fd29
jg 0x423d21
mov eax, dword [0x499244]
add eax, 0xa7f19f94
mov dword [0x499244], eax
mov dword [esp + 0x210], 0xffffffff
mov eax, dword [0x49830c]
mov ecx, eax
dec ecx
mov dword [0x49830c], ecx
xor eax, 0xf7b8
mov dx, ax
mov word [0x49ad2c], dx
mov ecx, dword [esp + 0xa40]
call fcn.0040ada0
mov eax, dword [0x498900]
or eax, 0xa91b8476
mov dword [0x498900], eax
mov dword [esp + 0x134], 0xd
jmp 0x423db4
mov eax, 0x9e00991e
mov cx, word [0x49abca]
movsx edx, cx
and edx, 0x77d06feb
cmp eax, edx
jg 0x423da9
mov ax, word [0x49aa86]
mov cx, ax
or ecx, 0xe010
mov ax, cx
mov word [0x49aa86], ax
mov dword [esp + 0x134], 0
lea ecx, [esp + 0x138]
call fcn.0043f200
mov ecx, dword [esp + 0x134]
test ecx, ecx
mov dword [esp + 0x3c], ecx
je 0x423dee
jmp 0x423dd8
mov eax, dword [esp + 0x3c]
sub eax, 0xd
mov dword [esp + 0x38], eax
je 0x423f4d
jmp 0x4242d5
jmp 0x423df3
mov eax, dword [0x499620]
xor eax, 0xffffffff
and eax, 0x68026b6a
cmp eax, 0x100fcf4b
je 0x423e40
mov eax, 0xe44383
mov cx, word [0x499fd0]
movsx edx, cx
cmp eax, edx
jle 0x423e3b
mov eax, dword [0x4985e0]
and eax, 0x3ef7208d
mov ecx, dword [0x497b48]
imul ecx, eax
mov dword [0x497b48], ecx
jmp 0x423e40
jmp 0x423e45
mov eax, dword [0x498938]
imul eax, eax, 0x41cd47d2
mov dword [0x498938], eax
cmp dword [esp + 0xa44], 0x3ad2
jne 0x423f2b
mov ax, word [0x49a112]
mov cx, ax
inc ecx
mov dx, cx
mov word [0x49a112], dx
movsx ecx, ax
mov esi, dword [0x499194]
xor esi, 0xffffffff
xor esi, 0x6f5b29f0
cmp ecx, esi
jle 0x423eaa
mov eax, dword [0x497864]
sar eax, 9
mov ecx, dword [0x498b84]
or ecx, eax
mov dword [0x498b84], ecx
mov eax, dword [esp + 0xa40]
mov ecx, eax
call fcn.00401260
cmp eax, 0x500000
jbe 0x423ef8
mov ax, word [0x49a3f6]
movsx ecx, ax
add ecx, 0x5d24c30
or ecx, 0x1c915828
cmp ecx, 0x5b2bbbb0
jle 0x423ef3
mov eax, dword [0x498118]
xor eax, 0xae714830
mov dword [0x498118], eax
jmp 0x423f4d
mov eax, 0x77dc8f69
mov cx, word [0x49a822]
movsx edx, cx
mov esi, dword [0x499514]
add edx, esi
cmp eax, edx
jne 0x423f26
mov eax, dword [0x499294]
add eax, 0xf5f7efa8
mov dword [0x499294], eax
jmp 0x423f2b
mov eax, dword [0x4996a8]
mov ecx, eax
inc ecx
mov dword [0x4996a8], ecx
mov ecx, dword [0x497ab0]
imul ecx, eax
mov dword [0x497ab0], ecx
jmp 0x4234c4
mov eax, 0xbaed1697
mov ecx, dword [0x49955c]
mov edx, ecx
dec edx
mov dword [0x49955c], edx
and ecx, 0x8ccaf1fe
or ecx, 0xf67f47c0
cmp eax, ecx
jl 0x423f8d
mov ax, word [0x49a508]
mov cx, ax
or ecx, 0x3c9a
mov ax, cx
mov word [0x49a508], ax
cmp dword [esp + 0x210], 0
jl 0x424025
mov eax, 0x51934070
mov ecx, dword [0x499200]
imul ecx, ecx, 0x1e02e3f8
mov dword [0x499200], ecx
mov ecx, dword [esp + 0xa40]
mov edx, dword [esp + 0x210]
mov esi, esp
mov dword [esi], 0
mov dword [esp + 0x34], ecx
mov dword [esp + 0x30], eax
mov dword [esp + 0x2c], edx
call fcn.0044f830
sub esp, 4
mov ecx, esp
mov edx, dword [esp + 0x2c]
mov dword [ecx + 4], edx
mov dword [ecx], eax
mov ecx, dword [esp + 0x34]
call fcn.00409070
sub esp, 8
mov ecx, dword [0x498b28]
mov edx, dword [0x498574]
add ecx, edx
mov edx, dword [esp + 0x30]
cmp edx, ecx
mov dword [esp + 0x28], eax
je 0x424020
mov eax, dword [0x4985c4]
add eax, 0xf76fdf82
mov dword [0x4985c4], eax
jmp 0x424025
mov eax, dword [0x4991fc]
xor eax, 0x87622644
mov dword [0x4991fc], eax
cmp dword [esp + 0xa48], 0
je 0x42413e
test byte [esp + 0x207], 1
jne 0x42413e
lea eax, [esp + 0x8b6]
mov ecx, dword [0x49878c]
add ecx, 0x3877e9f1
mov dword [0x49878c], ecx
mov ecx, dword [esp + 0xa48]
mov edx, dword [esp + 0xa40]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.0041b920
cmp eax, 0
jne 0x424125
mov eax, dword [0x498fc4]
xor eax, 0xffffffff
xor eax, 0xbf03a97a
cmp eax, 0x7d0aea19
jle 0x4240b7
mov eax, dword [0x498bdc]
add eax, 0x35e6a957
mov dword [0x498bdc], eax
mov ecx, dword [esp + 0xa40]
call fcn.0040ada0
mov ecx, dword [0x497b48]
and ecx, 0x30fee166
cmp ecx, 0x67bdd621
jle 0x4240f8
mov ax, word [0x499bd2]
mov cx, ax
xor ecx, 0x8c20
mov ax, cx
mov word [0x499bd2], ax
jmp 0x424120
mov eax, dword [0x4976d8]
mov ecx, 0x49e552f1
sub ecx, eax
xor ecx, 0xab6b
mov dx, word [0x49ad5e]
mov ax, dx
sub eax, ecx
mov dx, ax
mov word [0x49ad5e], dx
jmp 0x424125
mov eax, dword [0x498a6c]
imul eax, eax, 0x40097a58
mov ecx, dword [0x497d5c]
add ecx, eax
mov dword [0x497d5c], ecx
mov eax, dword [0x4996e0]
xor eax, 0x7845644f
mov dword [0x4996e0], eax
mov eax, dword [0x497458]
mov ecx, dword [esp + 0x688]
mov edx, esp
mov dword [edx], ecx
mov dword [edx + 4], 2
call eax
sub esp, 8
mov si, word [0x499e42]
mov cx, si
add ecx, 0x178e4340
mov si, cx
mov word [0x499e42], si
mov ecx, dword [0x497424]
mov edx, dword [esp + 0x688]
mov edi, esp
mov dword [edi], edx
mov dword [esp + 0x24], eax
call ecx
sub esp, 4
mov ecx, dword [0x498ee8]
dec ecx
mov dword [0x498ee8], ecx
mov edx, dword [0x498c78]
sub edx, ecx
mov dword [0x498c78], edx
mov dword [esp + 0x20], eax
mov eax, 0x202c4029
mov ecx, esp
lea edx, [esp + 0x8b6]
mov dword [ecx], edx
mov dword [ecx + 4], 0xa9
mov dword [esp + 0x1c], eax
call fcn.0044b180
mov si, word [0x499f8e]
mov ax, si
xor eax, 0x800a
mov si, ax
mov word [0x499f8e], si
mov eax, esp
lea ecx, [esp + 0x95f]
mov dword [eax], ecx
mov dword [eax + 4], 0xa9
call fcn.0044b180
mov si, word [0x49a3d8]
mov ax, si
inc eax
mov di, ax
mov word [0x49a3d8], di
movsx eax, si
mov ecx, dword [0x497d24]
xor ecx, 0xffffffff
add eax, ecx
mov ecx, dword [esp + 0x1c]
cmp ecx, eax
je 0x424259
mov eax, dword [0x498e2c]
shl eax, 6
mov cx, word [0x49a8be]
mov dx, cx
xor edx, eax
mov cx, dx
mov word [0x49a8be], cx
mov eax, esp
lea ecx, [esp + 0x68d]
mov dword [eax], ecx
mov dword [eax + 4], 0x229
call fcn.0044b180
mov dx, word [0x499fce]
mov ax, dx
inc eax
mov si, ax
mov word [0x499fce], si
movsx eax, dx
and eax, 0x41463c1e
mov dword [0x498be8], eax
mov eax, esp
lea ecx, [esp + 0x233]
mov dword [eax], ecx
mov dword [eax + 4], 0x429
call fcn.0044b180
mov eax, dword [0x498a18]
mov ecx, eax
dec ecx
mov dword [0x498a18], ecx
and eax, 0x88cbe983
mov dword [0x499908], eax
lea ecx, [esp + 0x65c]
call fcn.0043f200
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
int3