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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xffffffc0
push 0xffffffffffffffff
push 0x4a149b
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x968
mov eax, dword [ebp + 0x10]
push ebx
push esi
push edi
mov dword [esp + 0x94], ecx
test eax, eax
jne 0x4274c9
lea eax, [esp + 0x84]
mov ebx, dword [0x4c7a54]
mov edx, eax
mov esi, ecx
mov dword [esp + 0x40], eax
mov dword [edx], 0
mov dword [esp + 0x48], ebx
mov dword [esp + 0x10], esi
test ecx, ecx
je case.0x427804.116
mov edi, dword [esp + 0x84]
cmp dword [0x4cc514], 0
je 0x42752e
cmp dword [0x4cc504], 0
je 0x42751c
mov eax, dword [0x4cc4fc]
push eax
call dword [0x4a22d4]
mov dword [0x4cc504], 0
call dword [0x4a2588]
xor eax, eax
mov dword [0x4cc514], eax
mov dword [0x4cc4fc], eax
call dword [0x4a22f0]
mov edx, dword [0x4c7a54]
mov ecx, eax
sub ecx, dword [0x4cd01c]
cmp ecx, dword [edx + 0xd8]
jbe 0x42757b
push 0
push 0
push 0
push 0
lea eax, [esp + 0x134]
push eax
call dword [0x4a2610]
test eax, eax
je 0x427570
push 1
push 0xffffffffffffffff
call fcn.00401430
add esp, 8
call dword [0x4a22f0]
mov dword [0x4cd01c], eax
cmp byte [ebx + 0xec], 0
jne 0x4275ac
cmp byte [ebx + 0xee], 0
jne 0x4275ac
mov edx, dword [0x4cd010]
cmp edx, 0xffffffff
jle 0x4275ac
mov ecx, dword [ebx + 0x28]
cmp ecx, edx
jle 0x4275a8
mov byte [ebx + 0xec], 1
jmp 0x4275ac
inc ecx
mov dword [ebx + 0x28], ecx
mov ecx, dword [ebx + 4]
mov edx, dword [ebx]
cmp ecx, 0xffffffff
jl 0x4275cf
jg 0x4275bd
cmp edx, 0xffffffff
jbe 0x4275cf
cmp dword [0x4cd00c], ecx
jg 0x4275e1
jl 0x4275cf
cmp dword [0x4cd008], edx
jae 0x4275e1
mov ecx, dword [ebx + 0x24]
cmp ecx, 0xffffffff
jle 0x4275ed
sub eax, dword [0x4cd018]
cmp eax, ecx
jb 0x4275ed
push 1
push 0xa
call fcn.00401430
add esp, 8
cmp byte [ebx + 0xf8], 0
je 0x427618
jmp 0x427600
push 1
push 0x8000012f
call fcn.00401430
add esp, 8
cmp byte [ebx + 0xf8], 0
jne 0x427600
mov dword [0x4ccb4c], esi
cmp byte [ebx + 0xf9], 0
je 0x427660
mov ecx, dword [0x4cbe34]
mov dword [ecx*4 + 0x4cbe38], esi
call dword [0x4a22f0]
mov ecx, dword [0x4cbe34]
mov dword [ecx*4 + 0x4cae58], eax
inc ecx
mov dword [0x4cbe34], ecx
cmp ecx, 0x190
jl 0x427660
mov dword [0x4cbe34], 0
mov al, byte [esi]
cmp al, 1
je 0x427689
cmp al, 0x6b
je 0x427689
cmp al, 0x72
je 0x427689
mov ebx, dword [ebp + 0xc]
push 0
push 0xffffffffffffffff
push ebx
push esi
call fcn.0045d140
mov edi, eax
cmp edi, 1
jne 0x42baa1
jmp 0x42768c
mov ebx, dword [ebp + 0xc]
mov dl, byte [esi]
mov byte [esp + 0xdc], dl
cmp dl, 9
jb 0x4277ec
cmp dl, 0x20
ja 0x4277ec
add dword [0x4cd008], 1
push esi
adc dword [0x4cd00c], 0
call fcn.0042c3b0
cmp eax, 3
jne 0x42774c
mov ecx, dword [esi + 0x14]
cmp byte [ecx], 0x75
jne 0x4276ef
lea esp, [esp]
mov ecx, dword [ecx + 0x14]
lea edx, [esp + 0x24]
push edx
push ebx
push 2
call fcn.00427490
mov ecx, dword [esi + 0x14]
mov edi, eax
mov eax, dword [esp + 0x24]
cmp eax, ecx
je 0x4276d0
jmp 0x427702
lea eax, [esp + 0x24]
push eax
push ebx
push 3
call fcn.00427490
mov edi, eax
mov eax, dword [esp + 0x24]
cmp eax, esi
je 0x42891b
cmp dword [ebp + 8], 3
je 0x42ba9b
cmp edi, 1
jne 0x42ba9b
test eax, eax
je 0x427732
mov ecx, dword [eax + 0x1c]
cmp ecx, dword [esi + 0x1c]
jne 0x42babd
jmp 0x428913
mov esi, dword [esi + 0x18]
cmp byte [esi], 0x21
mov dword [esp + 0x10], esi
jne 0x428917
mov edx, esi
mov eax, dword [edx + 0x18]
jmp 0x428913
mov esi, dword [esi + 0x18]
cmp byte [esi], 0x21
mov dword [esp + 0x10], esi
jne 0x4277c6
mov ecx, dword [esi + 0x14]
cmp byte [ecx], 0x75
jne 0x42777f
mov ecx, dword [ecx + 0x14]
lea edx, [esp + 0x24]
push edx
push ebx
push 2
call fcn.00427490
mov ecx, dword [esi + 0x14]
mov edi, eax
mov eax, dword [esp + 0x24]
cmp eax, ecx
je 0x427760
jmp 0x427792
lea eax, [esp + 0x24]
push eax
push ebx
push 3
call fcn.00427490
mov edi, eax
mov eax, dword [esp + 0x24]
cmp dword [ebp + 8], 3
je 0x42ba9b
cmp edi, 1
jne 0x42ba9b
test eax, eax
je 0x4277ba
mov ecx, dword [eax + 0x1c]
cmp ecx, dword [esi + 0x1c]
jne 0x42babd
jmp 0x428913
mov edx, dword [esi + 0x18]
mov dword [esp + 0x10], edx
jmp 0x428917
cmp dword [ebp + 8], 3
jne 0x428917
mov eax, 1
mov ecx, dword [esp + 0x974]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
movzx eax, dl
add eax, 0xffffffa0
cmp eax, 0x80
ja case.0x427804.98
movzx eax, byte [eax + 0x42bed8]
jmp dword [eax*4 + 0x42be94]
mov ecx, 1
add dword [0x4cd008], ecx
adc dword [0x4cd00c], 0
mov eax, dword [esi + 0x18]
test eax, eax
je 0x4278bd
xor ebx, ebx
cmp dword [esi + 0xc], ecx
mov edx, eax
sete bl
mov dword [esp + 0x60], edx
test ebx, ebx
je 0x427854
mov eax, dword [esp + 0x48]
mov ecx, dword [eax + 0xb4]
mov dword [eax + 0xb8], ecx
mov dword [eax + 0xb4], 0
mov ecx, edx
call fcn.004012f0
mov edi, eax
test ebx, ebx
je 0x42787b
mov eax, dword [esp + 0x48]
mov edx, dword [eax + 0xb8]
mov dword [eax + 0xb4], edx
mov dword [eax + 0xb8], 0
test edi, edi
je 0x42baa1
cmp edi, 8
je 0x42baa1
cmp dword [ebp + 8], 3
jne 0x428910
mov eax, 1
cmp edi, 7
je 0x4277d5
mov eax, edi
mov ecx, dword [esp + 0x974]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
push esi
mov bl, cl
call fcn.00444c40
mov edx, eax
mov dword [esp + 0x60], edx
test edx, edx
je 0x42bdce
mov ecx, dword [esp + 0x48]
cmp dword [ecx + 0xb4], 0
je 0x4278f6
mov eax, dword [edx + 8]
call fcn.00444d00
test eax, eax
je 0x4278f6
mov ebx, 1
jmp 0x42783a
xor ebx, ebx
jmp 0x427854
add dword [0x4cd008], 1
adc dword [0x4cd00c], 0
mov eax, dword [esi + 0x18]
mov dword [esp + 0x60], eax
test eax, eax
jne 0x42792a
push esi
mov bl, 1
call fcn.00444c40
mov dword [esp + 0x60], eax
test eax, eax
je 0x42bdce
cmp dword [ebp + 8], 3
mov ecx, dword [esp + 0x48]
mov dword [ecx + 0xbc], eax
je 0x42baba
mov ecx, dword [eax + 8]
mov edx, dword [esi + 0x1c]
cmp edx, dword [ecx + 0x1c]
jne 0x42baba
mov dword [esp + 0x10], ecx
jmp 0x428917
add dword [0x4cd008], 1
mov eax, dword [esp + 0x94]
adc dword [0x4cd00c], 0
mov ebx, dword [eax + 0xc]
test ebx, ebx
jne 0x4279a2
mov eax, dword [0x4cb4f0]
mov edi, eax
cmp word [eax], bx
je 0x4279a0
mov ebx, dword [0x4cc550]
test ebx, ebx
je 0x4279a0
mov ecx, dword [ebx + 4]
push edi
push ecx
call fcn.00490e99
add esp, 8
test eax, eax
je 0x4279a2
mov ebx, dword [ebx + 0x14]
test ebx, ebx
jne 0x427988
xor ebx, ebx
xor eax, eax
mov edi, 1
test ebx, ebx
je 0x427aaa
mov eax, dword [0x4cb4f4]
cmp word [eax], 0
je 0x4279d2
push 0x4a7e84
push eax
call fcn.00490e99
add esp, 8
test eax, eax
jne 0x4279d2
mov al, 1
jmp 0x4279d4
xor al, al
lea edx, [esp + 0x60]
push edx
push eax
push ebx
call fcn.0047d610
mov edx, dword [esp + 0x60]
mov dword [esp + 0x3c], eax
test edx, edx
je 0x427aa6
mov eax, dword [edx + 8]
mov edi, dword [eax + 0x1c]
test edi, edi
je 0x427a38
mov ecx, dword [esi + 0x1c]
test ecx, ecx
je 0x427a0c
cmp edi, ecx
je 0x427a38
mov ecx, dword [ecx + 0x1c]
test ecx, ecx
jne 0x427a01
push 0x4a48a0
push 0
push 0x4aee80
mov ecx, esi
call fcn.00430920
xor eax, eax
mov ecx, dword [esp + 0x974]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov ebx, dword [esp + 0x48]
mov edi, dword [ebx + 0xb4]
test edi, edi
je 0x427ad6
call fcn.00444d00
test eax, eax
je 0x427ad6
mov dword [esp + 0x1c], 1
mov dword [ebx + 0xb8], edi
mov dword [ebx + 0xb4], 0
mov ecx, edx
call fcn.004012f0
cmp dword [esp + 0x1c], 0
mov edi, eax
je 0x427a95
mov eax, dword [ebx + 0xb8]
mov dword [ebx + 0xb4], eax
mov dword [ebx + 0xb8], 0
test edi, edi
je 0x42baa1
cmp edi, 8
je 0x42baa1
mov eax, dword [esp + 0x3c]
test eax, eax
mov eax, dword [esp + 0x94]
sete cl
movzx edx, cl
push edx
push eax
call fcn.004305c0
cmp dword [ebp + 8], 3
je 0x427896
mov ecx, dword [esi + 0x14]
mov dword [esp + 0x10], ecx
jmp 0x428917
mov dword [esp + 0x1c], 0
jmp 0x427a6f
mov eax, dword [esi + 0xc]
mov dword [esp + 0x18], eax
dec eax
je 0x427b31
sub eax, 3
je 0x427b17
sub eax, 5
jne 0x427ba9
mov edx, dword [0x4cb4f4]
push eax
push eax
push edx
mov eax, 1
call fcn.004160b0
add esp, 0xc
mov dword [esp + 0x64], eax
jmp 0x427ba9
mov eax, dword [0x4cb4f0]
push 0
push 0
push eax
xor eax, eax
call fcn.004160b0
add esp, 0xc
mov dword [esp + 0x64], eax
jmp 0x427ba9
movzx eax, byte [esi + 1]
sub eax, 0
je 0x427ba1
dec eax
je 0x427b5f
mov ecx, dword [0x4cb4f0]
push 0x4aa92c
push ecx
call fcn.00490e99
add esp, 8
test eax, eax
jne 0x427b78
mov dword [esp + 0x18], 5
jmp 0x427ba9
mov eax, dword [0x4cb4f0]
push 0
push 1
push 1
push 1
call fcn.00477120
add esp, 0x10
test eax, eax
jne 0x427ba1
mov edx, dword [0x4cb4f0]
push 0
push 0
push edx
xor eax, eax
call fcn.004160b0
xor ecx, ecx
add esp, 0xc
test eax, eax
setne cl
mov dword [esp + 0x64], eax
add ecx, 3
mov dword [esp + 0x18], ecx
jmp 0x427ba9
mov dword [esp + 0x18], 2
mov ecx, dword [esp + 0x18]
lea eax, [ecx - 3]
cmp eax, 7
ja case.0x427bc0.5
movzx edx, byte [eax + 0x42bf68]
jmp dword [edx*4 + 0x42bf5c]
mov esi, dword [0x4cb4f4]
call fcn.00416940
mov dword [esp + 0x54], eax
test eax, eax
je 0x42bba2
mov eax, dword [0x4cb4f8]
cmp word [eax], 0x31
jne 0x427c01
cmp word [eax + 2], 0
jne 0x427c01
mov esi, dword [esp + 0x10]
mov ebx, dword [ebp + 0xc]
mov byte [esp + 0x5c], 1
jmp case.0x427bc0.5
mov esi, dword [esp + 0x10]
mov ebx, dword [ebp + 0xc]
mov byte [esp + 0x5c], 0
jmp case.0x427bc0.5
cmp ecx, 4
jne 0x427c51
mov esi, dword [0x4cb4f8]
call fcn.00416940
mov dword [esp + 0x54], eax
mov eax, dword [0x4cb4fc]
cmp word [eax], 0x31
jne 0x427c43
cmp word [eax + 2], 0
jne 0x427c43
mov esi, dword [esp + 0x10]
mov ebx, dword [ebp + 0xc]
mov byte [esp + 0x5c], 1
jmp 0x427c6f
mov esi, dword [esp + 0x10]
mov ebx, dword [ebp + 0xc]
mov byte [esp + 0x5c], 0
jmp 0x427c6f
mov eax, dword [0x4cb4f8]
call fcn.00416990
mov dword [esp + 0x54], eax
shr eax, 2
and al, 1
mov byte [esp + 0x5c], al
je 0x427c6f
and dword [esp + 0x54], 0xfffffffb
cmp dword [esp + 0x54], 0
je 0x42bbd0
xor edx, edx
mov byte [esp + 0x23], 0
mov dword [esp + 0x24], edx
mov eax, dword [esi + 0x18]
cmp byte [eax], 0x6c
mov dword [esp + 0x1c], eax
jne 0x427c9e
mov dword [esp + 0x14], eax
mov eax, dword [eax + 0x14]
mov dword [esp + 0x1c], eax
jmp 0x427ca2
mov dword [esp + 0x14], edx
mov eax, dword [esp + 0x48]
mov ecx, dword [eax + 8]
mov dword [esp + 0xb0], ecx
mov ecx, dword [eax + 0xc]
mov dword [esp + 0xb4], ecx
mov ecx, dword [eax + 0x10]
mov dword [esp + 0x3c], ecx
mov ecx, dword [eax + 0x14]
mov dword [esp + 0x44], ecx
mov ecx, dword [eax + 0x18]
mov dword [esp + 0x78], ecx
mov ecx, dword [eax + 0x1c]
mov dword [esp + 0x30], ecx
mov ecx, dword [esp + 0x18]
cmp ecx, 8
je 0x427ce9
mov dword [eax + 8], 1
mov dword [eax + 0xc], edx
lea eax, [ecx - 2]
cmp eax, 8
ja case.default.0x427cf5
jmp dword [eax*4 + 0x42bf70]
cmp byte [esi + 1], dl
jbe 0x427d17
xor edi, edi
mov ecx, esi
call fcn.00423740
mov ebx, dword [ebp + 0xc]
mov byte [esp + 0xac], 0
jmp 0x427d23
xor eax, eax
xor edx, edx
mov byte [esp + 0xac], 1
mov ecx, dword [esp + 0xac]
push ecx
push edx
mov edx, dword [esp + 0x1c]
push eax
push edx
lea eax, [esp + 0x34]
push eax
lea ecx, [esp + 0x37]
push ecx
push ebx
mov edi, esi
call fcn.0042da10
mov edi, eax
jmp case.default.0x427cf5
mov ebx, dword [ebp + 0xc]
lea edx, [esp + 0x24]
push edx
lea eax, [esp + 0x27]
push eax
call fcn.0042db70
mov esi, dword [esp + 0x10]
mov edi, eax
jmp case.default.0x427cf5
mov ecx, dword [esp + 0x14]
push ecx
lea edx, [esp + 0x28]
push edx
lea eax, [esp + 0x2b]
push eax
push ebx
push esi
call fcn.0042dd60
mov edi, eax
jmp case.default.0x427cf5
mov ecx, dword [0x4cb4f8]
push 0x4abf3c
push ecx
call fcn.00490e99
mov edx, dword [esp + 0x1c]
add esp, 8
push edx
test eax, eax
lea eax, [esp + 0x28]
push eax
lea ecx, [esp + 0x2b]
push ecx
push ebx
push esi
je 0x427dba
call fcn.0042ed50
mov edi, eax
jmp case.default.0x427cf5
call fcn.0042f040
mov edi, eax
jmp case.default.0x427cf5
lea esi, [esp + 0xec]
call fcn.00416fe0
mov dword [esp + 0x97c], 0
mov edx, dword [0x4cb4f4]
cmp word [edx], 0
je 0x427e35
mov eax, dword [esp + 0x48]
mov eax, dword [eax + 0xfc]
and eax, 0x7fffffff
push 0x30c
mov ecx, esi
call fcn.00474d50
test al, al
je 0x427e35
mov ecx, dword [0x4cb4f8]
mov ebx, dword [esp + 0x10]
push ecx
mov ecx, dword [ebp + 0xc]
lea edx, [esp + 0x28]
push edx
mov edx, dword [esp + 0x1c]
lea eax, [esp + 0x2b]
push eax
push ecx
mov ecx, esi
call fcn.0042f350
mov edi, eax
call fcn.00416f40
jmp 0x427e3a
mov edi, 1
lea ecx, [esp + 0xec]
mov dword [esp + 0x97c], 0xffffffff
call fcn.00417030
mov esi, dword [esp + 0x10]
jmp case.default.0x427cf5
cmp dword [esp + 0x18], 3
mov eax, dword [0x4cb4f0]
je 0x427e6b
mov eax, dword [0x4cb4f4]
mov edx, dword [esp + 0x5c]
mov ecx, dword [esp + 0x14]
push eax
mov eax, dword [esp + 0x58]
push edx
push eax
push ecx
lea edx, [esp + 0x34]
push edx
lea eax, [esp + 0x37]
push eax
push ebx
mov ecx, esi
call fcn.0042e1d0
mov edi, eax
jmp case.default.0x427cf5
cmp dword [esp + 0x18], 4
lea ecx, [esp + 0x53]
push ecx
jne 0x427ec2
mov edx, dword [0x4cb4f0]
push 0
push edx
xor eax, eax
call fcn.004160b0
mov dword [esp + 0x34], eax
mov eax, dword [0x4cb4f4]
mov dword [esp + 0x9c], eax
jmp 0x427ede
mov eax, dword [0x4cb4f4]
lea edx, [esp + 0x94]
push edx
push eax
mov eax, 1
call fcn.004160b0
mov dword [esp + 0x34], eax
add esp, 0xc
cmp dword [esp + 0x28], 0
je 0x427f31
mov ecx, dword [esp + 0x90]
mov edx, dword [esp + 0x28]
mov eax, dword [esp + 0x64]
push ecx
mov ecx, dword [esp + 0x60]
push edx
mov edx, dword [esp + 0x5c]
push eax
mov eax, dword [esp + 0x20]
push ecx
push edx
push eax
lea ecx, [esp + 0x3c]
push ecx
lea edx, [esp + 0x3f]
push edx
push ebx
mov ecx, esi
call fcn.0042e940
cmp byte [esp + 0x53], 0
mov edi, eax
je case.default.0x427cf5
mov eax, dword [esp + 0x28]
push eax
call dword [0x4a2040]
jmp case.default.0x427cf5
mov edi, 1
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0xb0]
mov edx, dword [esp + 0xb4]
mov dword [eax + 8], ecx
mov ecx, dword [esp + 0x3c]
mov dword [eax + 0xc], edx
mov edx, dword [esp + 0x44]
mov dword [eax + 0x10], ecx
mov ecx, dword [esp + 0x78]
mov dword [eax + 0x14], edx
mov edx, dword [esp + 0x30]
mov dword [eax + 0x18], ecx
mov dword [eax + 0x1c], edx
test edi, edi
je 0x42baa1
cmp edi, 7
je 0x42baa1
cmp edi, 8
je 0x42baa1
cmp byte [esp + 0x23], 0
jne 0x42891b
mov eax, dword [esp + 0x24]
test eax, eax
je 0x427fae
mov ecx, dword [eax + 0x1c]
cmp ecx, dword [esi + 0x1c]
jne 0x42bbfb
mov dword [esp + 0x10], eax
mov esi, eax
jmp 0x42891b
cmp dword [ebp + 8], 3
je case.0x427804.116
mov edx, dword [esp + 0x1c]
mov dword [esp + 0x10], edx
jmp 0x428917
mov ecx, dword [esp + 0x48]
mov eax, dword [ecx + 0x100]
mov dword [esp + 0x78], eax
cmp dl, 0x70
jne 0x42801e
mov ebx, dword [0x4cb498]
mov eax, dword [ecx + 0x104]
mov dword [esp + 0x30], eax
mov dword [ecx + 0x104], 0
test ebx, ebx
je 0x427fff
call fcn.00479f10
mov edi, eax
jmp 0x428004
mov edi, 1
lea esi, [esp + 0x30]
call fcn.00431100
test edi, edi
je 0x42bdce
mov esi, dword [esp + 0x10]
mov ebx, dword [ebp + 0xc]
jmp 0x428038
or eax, 1
mov dword [ecx + 0x100], eax
mov edx, dword [esi + 0x18]
cmp byte [edx], 0x71
je 0x428038
or eax, 2
mov dword [ecx + 0x100], eax
mov dword [esp + 0x24], 0
mov ecx, dword [esi + 0x14]
cmp byte [ecx], 0x75
jne 0x428067
mov ecx, dword [ecx + 0x14]
lea eax, [esp + 0x24]
push eax
push ebx
push 2
call fcn.00427490
mov ecx, dword [esi + 0x14]
mov edx, dword [esp + 0x24]
mov edi, eax
cmp edx, ecx
je 0x428048
jmp 0x42807a
lea edx, [esp + 0x24]
push edx
push ebx
push 3
call fcn.00427490
mov edx, dword [esp + 0x24]
mov edi, eax
mov al, byte [esp + 0xdc]
mov esi, dword [esi + 0x18]
mov dword [esp + 0x10], esi
cmp al, 0x6f
jne 0x4280ea
mov eax, dword [esp + 0x78]
mov ebx, dword [esp + 0x48]
mov dword [ebx + 0x100], eax
xor al, al
cmp byte [esi], 0x70
jne 0x4280bb
cmp dword [ebx + 0x104], 0
mov al, 1
jne 0x428917
mov ecx, esi
mov ecx, dword [ecx + 0x18]
mov dword [esp + 0x10], ecx
mov esi, ecx
cmp byte [esi], 0x71
je 0x4280ff
test al, al
jne 0x4281bd
cmp dword [ebx + 0x104], 0
lea esi, [ebx + 0x104]
je 0x4281bd
call fcn.00431100
mov edi, 1
jmp 0x4281b9
cmp al, 0x70
jne 0x4281bd
cmp byte [esi], 0x71
jne 0x4281bd
mov ebx, dword [esp + 0x48]
cmp edi, 1
jne 0x428110
test edx, edx
je 0x428917
mov esi, dword [esp + 0x10]
mov ecx, dword [0x4cc47c]
mov edx, dword [ebx + 0x104]
mov dword [esp + 0x44], ecx
xor eax, eax
lea ecx, [esp + 0xc4]
push ecx
mov dword [esp + 0x20], edx
mov edx, dword [0x4cc480]
push eax
push 3
mov ecx, esi
mov dword [ebx + 0x104], eax
mov dword [esp + 0x3c], edx
mov dword [0x4cc47c], eax
mov dword [0x4cc480], eax
call fcn.00427490
cmp dword [esp + 0x44], 0
mov dword [esp + 0x3c], eax
je 0x428194
mov eax, dword [0x4cc47c]
test eax, eax
je 0x428181
push eax
call fcn.00491536
add esp, 4
cmp dword [0x4cc480], 0x400000
jbe 0x428181
dec dword [0x4cc484]
mov edx, dword [esp + 0x44]
mov eax, dword [esp + 0x30]
mov dword [0x4cc47c], edx
mov dword [0x4cc480], eax
mov eax, dword [esp + 0x3c]
cmp eax, 1
jne 0x42bc06
cmp dword [esp + 0xc4], 0
jne 0x42bc06
mov ecx, dword [esp + 0x1c]
mov dword [ebx + 0x104], ecx
mov edx, dword [esp + 0x24]
cmp dword [ebp + 8], 3
je 0x42bc64
cmp edi, 1
jne 0x42bc64
test edx, edx
je 0x428917
mov eax, dword [edx + 0x1c]
mov ecx, dword [esp + 0x10]
cmp eax, dword [ecx + 0x1c]
jne 0x42bc59
mov dword [esp + 0x10], edx
jmp 0x428917
mov edx, dword [esi + 0x14]
mov dword [esp + 0x10], edx
jmp 0x428917
mov ebx, dword [0x4cc47c]
mov ecx, dword [0x4cc480]
xor eax, eax
mov dword [esp + 0x1c], eax
mov dword [esp + 0x18], ebx
mov dword [esp + 0x14], ecx
mov dword [0x4cc47c], eax
mov dword [0x4cc480], eax
mov dword [esp + 0xa4], eax
cmp dword [esi + 0xc], eax
jne 0x42823d
mov dword [esp + 0xa0], 0x44
lea edi, [eax + 1]
jmp 0x428299
push 5
lea edx, [esp + 0x1c]
push edx
push 0
push esi
lea ebx, [esp + 0x24]
lea esi, [esp + 0xa8]
call fcn.0045cba0
mov ebx, dword [esp + 0x18]
mov esi, dword [esp + 0x10]
mov edi, eax
cmp edi, 1
jne 0x4284d7
cmp dword [esp + 0xa0], 5
jne 0x428299
cmp dword [esp + 0x98], ebx
jne 0x428299
mov eax, dword [esp + 0x14]
mov dword [esp + 0xa4], ebx
xor ebx, ebx
mov dword [esp + 0xd4], eax
mov dword [esp + 0x18], ebx
mov dword [esp + 0x14], ebx
mov ecx, dword [esi + 0x14]
mov eax, dword [ecx + 0x14]
cmp byte [eax], 0x74
mov dword [esp + 0x28], eax
jne 0x428485
lea esp, [esp]
mov ecx, dword [esp + 0x28]
mov eax, dword [ecx + 0xc]
mov dword [esp + 0x3c], eax
test eax, eax
jne 0x4282cb
mov edx, dword [ecx + 0x14]
mov dword [esp + 0x1c], edx
jmp 0x428467
mov dword [esp + 0x44], 0
test eax, eax
jle 0x428467
jmp 0x4282e0
mov ecx, dword [esp + 0x44]
mov edx, dword [esp + 0x28]
push 5
lea eax, [esp + 0x1c]
push eax
push ecx
push edx
lea ebx, [esp + 0x24]
lea esi, [esp + 0x78]
call fcn.0045cba0
mov edi, eax
cmp edi, 1
jne 0x428444
cmp dword [esp + 0x70], 0
jne 0x42832a
mov eax, dword [esp + 0x10]
cmp dword [eax + 0xc], 0
jne 0x42832a
mov dword [esp + 0x70], 5
mov dword [esp + 0x6c], 0
cmp dword [esp + 0xa0], 0x44
lea ecx, [esp + 0x68]
push ecx
jne 0x428404
call fcn.00451480
add esp, 4
dec eax
je 0x4283e7
dec eax
je 0x428392
mov ecx, dword [esp + 0x70]
mov eax, dword [esp + 0x68]
cmp ecx, 6
je 0x4283f9
cmp ecx, 4
jne 0x428378
cmp byte [eax + 0x17], 0
jne 0x42836e
mov eax, dword [eax + 0xc]
test byte [eax + 0x15], 2
jne 0x4283f9
xor ecx, ecx
lea eax, [esp + 0x68]
call fcn.00451710
xor edx, edx
cmp word [eax], dx
setne dl
mov eax, edx
jmp 0x428413
mov eax, dword [esp + 0x70]
dec eax
cmp eax, 5
ja case.0x42839c.3
jmp dword [eax*4 + 0x42bf94]
fild qword [esp + 0x68]
jmp 0x4283d5
fld qword [esp + 0x68]
jmp 0x4283d5
mov eax, dword [esp + 0x68]
push 1
call fcn.004156b0
jmp 0x4283d5
mov eax, dword [esp + 0x6c]
test eax, eax
je case.0x42839c.3
fild qword [eax]
jmp 0x4283d5
mov eax, dword [esp + 0x68]
push eax
call fcn.004929e2
add esp, 4
fldz
fucompp
fnstsw ax
test ah, 0x44
jnp case.0x42839c.6
mov eax, 1
jmp 0x428413
push 1
lea ecx, [esp + 0x6c]
call fcn.004515d0
add esp, 4
or eax, edx
je case.0x42839c.6
mov eax, 1
jmp 0x428413
xor eax, eax
jmp 0x428413
lea eax, [esp + 0x9c]
call fcn.00451a20
add esp, 4
test eax, eax
setne bl
cmp dword [esp + 0x70], 6
jne 0x42842b
mov eax, dword [esp + 0x68]
mov edx, dword [eax]
push eax
mov eax, dword [edx + 8]
call eax
test bl, bl
jne 0x42844e
mov eax, dword [esp + 0x44]
inc eax
mov dword [esp + 0x44], eax
cmp eax, dword [esp + 0x3c]
jl 0x4282e0
jmp 0x428463
mov dword [esp + 0x1c], 0
jmp 0x428459
mov ecx, dword [esp + 0x28]
mov edx, dword [ecx + 0x14]
mov dword [esp + 0x1c], edx
mov eax, dword [esp + 0x3c]
cmp dword [esp + 0x44], eax
jl 0x42847d
mov esi, dword [esp + 0x10]
mov ecx, dword [esp + 0x28]
mov eax, dword [ecx + 0x18]
cmp byte [eax], 0x74
mov dword [esp + 0x28], eax
je 0x4282b0
jmp 0x428481
mov esi, dword [esp + 0x10]
mov ebx, dword [esp + 0x18]
cmp dword [esp + 0xa0], 6
jne 0x42849e
mov eax, dword [esp + 0x98]
mov edx, dword [eax]
push eax
mov eax, dword [edx + 8]
call eax
cmp dword [esp + 0xa4], 0
je 0x4284d7
test ebx, ebx
je 0x4284c5
push ebx
call fcn.00491536
add esp, 4
cmp dword [esp + 0x14], 0x400000
jbe 0x4284c5
dec dword [0x4cc484]
mov ecx, dword [esp + 0xd4]
mov ebx, dword [esp + 0xa4]
mov dword [esp + 0x14], ecx
test ebx, ebx
je 0x428514
cmp dword [0x4cc47c], 0
je 0x428505
mov edx, dword [0x4cc47c]
push edx
call fcn.00491536
add esp, 4
cmp dword [0x4cc480], 0x400000
jbe 0x428505
dec dword [0x4cc484]
mov eax, dword [esp + 0x14]
mov dword [0x4cc47c], ebx
mov dword [0x4cc480], eax
mov ecx, dword [esp + 0x1c]
test ecx, ecx
je 0x428534
mov eax, dword [ebp + 0xc]
lea edx, [esp + 0x24]
push edx
push eax
push 2
call fcn.00427490
mov edi, eax
mov eax, dword [esp + 0x24]
jmp 0x42853a
xor eax, eax
mov dword [esp + 0x24], eax
cmp edi, 1
jne 0x42bbfb
cmp dword [ebp + 8], 3
je 0x42bbfb
test eax, eax
je 0x4277ba
mov ecx, dword [eax + 0x1c]
cmp ecx, dword [esi + 0x1c]
je 0x428913
mov edx, dword [esp + 0x40]
mov dword [edx], eax
jmp case.0x427804.116
cmp dword [esi + 0xc], 1
jne 0x42857a
mov eax, dword [esi + 0x18]
jmp 0x428913
lea ecx, [esp + 0x24]
push ecx
mov ecx, dword [esi + 0x14]
push ebx
push 2
call fcn.00427490
mov edi, eax
mov eax, dword [esp + 0x24]
cmp eax, esi
je 0x42891b
cmp dword [ebp + 8], 3
je 0x42ba9b
cmp edi, 1
jne 0x42ba9b
test eax, eax
je 0x428572
mov edx, dword [esi + 0x1c]
cmp edx, dword [eax + 0x1c]
jne 0x42babd
mov dword [esp + 0x10], eax
mov esi, eax
jmp 0x42891b
add dword [0x4cd008], 1
mov ebx, dword [0x4cb498]
mov edi, dword [0x4c7a54]
adc dword [0x4cd00c], 0
mov cl, byte [esi]
movzx edx, cl
dec edx
mov dword [esp + 0x18], ebx
mov dword [esp + 0x14], edi
cmp edx, 0xe1
ja case.0x428601.8
movzx edx, byte [edx + 0x42c22c]
jmp dword [edx*4 + 0x42bfac]
push esi
call fcn.0043e620
jmp 0x4288fc
cmp byte [esi + 1], 1
mov edx, dword [0x4cb4f4]
jbe 0x428684
mov eax, dword [esi + 8]
cmp byte [eax + 0x11], 0
je 0x428632
mov edi, 1
jmp 0x428906
mov eax, dword [eax + 0x1c]
test eax, eax
je 0x428645
mov ecx, dword [eax + 4]
mov edx, dword [eax]
push ecx
push edx
jmp 0x4288f6
mov eax, dword [0x4cb49c]
test eax, eax
je 0x428684
cmp word [edx], 0
jne 0x428684
mov cl, byte [eax + 0x17]
test cl, cl
jne 0x428661
mov ecx, dword [eax + 0xc]
mov cl, byte [ecx + 0x17]
movzx ecx, cl
dec ecx
je 0x428678
sub ecx, 2
jne 0x428684
mov eax, ebx
call fcn.0047a020
jmp 0x4288fc
mov ecx, ebx
call fcn.00479d90
jmp 0x4288fc
push 1
push 0
push 0xffffffffffffffff
push edx
push ebx
call fcn.0047a5f0
jmp 0x4288fc
mov eax, dword [esi + 8]
cmp dword [eax + 0x1c], 0
je 0x4286b2
cmp byte [eax + 0x11], 0
jne 0x4286b2
mov eax, 1
mov dword [esp + 0x14], eax
xor edi, edi
jmp 0x4286f3
mov edi, dword [0x4cb49c]
mov eax, dword [0x4cb4f4]
mov dword [esp + 0x14], 0
test edi, edi
je 0x4286e1
cmp word [eax], 0
jne 0x4286e1
mov cl, byte [edi + 0x17]
test cl, cl
jne 0x4286dc
mov edx, dword [edi + 0xc]
mov cl, byte [edx + 0x17]
cmp cl, 1
je 0x428744
xor edi, edi
push 1
push 1
push 0
push 1
call fcn.00477120
add esp, 0x10
push 1
mov ecx, ebx
mov dword [esp + 0x20], eax
call fcn.00415580
mov dword [esp + 0x30], eax
mov eax, dword [0x4cb4f8]
movzx eax, word [eax]
test ax, ax
je 0x428887
call fcn.00409dd0
movzx ecx, ax
push ecx
push 0x4ac00c
call fcn.00491a11
add esp, 8
test eax, eax
je 0x428887
cmp dword [esp + 0x1c], 0
jne 0x428753
mov edi, 1
jmp 0x428906
test edi, edi
je 0x4286e3
push 1
mov ecx, edi
call fcn.00415580
jmp 0x4286f3
cmp dword [esp + 0x14], 0
je 0x428764
mov edx, dword [esi + 8]
mov eax, dword [edx + 0x1c]
fild qword [eax]
jmp 0x428782
test edi, edi
je 0x428773
push 0
mov eax, edi
call fcn.004156b0
jmp 0x428782
mov esi, dword [0x4cb4f4]
call fcn.00415450
mov esi, dword [esp + 0x10]
push 0
fstp qword [esp + 0x34]
push 1
mov ecx, ebx
call fcn.00401280
cmp word [eax], 0
je 0x4287cb
lea ecx, [esp + 0x88]
push ecx
push 0
push 1
mov ecx, ebx
call fcn.00401280
call fcn.00476ce0
add esp, 4
test eax, eax
jne 0x4287ef
push 1
push eax
push 0xffffffffffffffff
push 0x4a48a0
push ebx
call fcn.0047a5f0
jmp 0x4288fc
lea edx, [esp + 0xe0]
push edx
call dword [0x4a210c]
lea eax, [esp + 0x88]
push eax
lea ecx, [esp + 0xe4]
push ecx
call dword [0x4a2134]
mov edx, dword [0x4cb4f8]
mov ax, word [edx]
call fcn.00409dd0
fld qword [esp + 0x30]
movzx eax, ax
cmp eax, 0x44
je 0x428823
cmp eax, 0x48
je 0x42881b
cmp eax, 0x4d
jne 0x428829
fmul qword [0x4c1f88]
jmp 0x428829
fmul qword [0x4c1f80]
jmp 0x428829
fmul qword [0x4c1f78]
mov esi, dword [esp + 0x88]
mov edi, dword [esp + 0x8c]
call fcn.0049f4c6
push 0
push 0x989680
push edx
push eax
call fcn.00497060
add esi, eax
adc edi, edx
mov dword [esp + 0x88], esi
push 0
lea eax, [esp + 0x8c]
lea esi, [esp + 0x144]
mov dword [esp + 0x90], edi
call fcn.00476f90
add esp, 4
push 1
push 0
push 0xffffffffffffffff
push eax
push ebx
call fcn.0047a5f0
mov esi, dword [esp + 0x10]
jmp 0x4288fc
mov eax, 2
cmp dword [esp + 0x1c], eax
je 0x42892c
cmp dword [esp + 0x30], eax
je 0x42892c
cmp dword [esp + 0x14], 0
je 0x4288bb
mov eax, dword [esi + 8]
mov eax, dword [eax + 0x1c]
mov ecx, dword [eax + 4]
mov edi, dword [eax]
mov dword [esp + 0xcc], ecx
jmp 0x4288e2
test edi, edi
je 0x4288ca
push 0
mov eax, edi
call fcn.00415630
jmp 0x4288d9
mov esi, dword [0x4cb4f4]
call fcn.00415420
mov esi, dword [esp + 0x10]
mov dword [esp + 0xcc], edx
mov edi, eax
push 0
mov eax, ebx
call fcn.00415630
add eax, edi
adc edx, dword [esp + 0xcc]
push edx
push eax
push ebx
call fcn.004154f0
mov edi, eax
test edi, edi
je 0x42baa1
cmp dword [ebp + 8], 3
je 0x42baa1
mov eax, dword [esi + 0x14]
mov dword [esp + 0x10], eax
mov esi, dword [esp + 0x10]
test esi, esi
je case.0x427804.116
mov ebx, dword [esp + 0x48]
jmp 0x4274f4
cmp dword [esp + 0x14], 0
je 0x42893d
mov edx, dword [esi + 8]
mov eax, dword [edx + 0x1c]
fild qword [eax]
jmp 0x42895b
test edi, edi
je 0x42894c
push 0
mov eax, edi
call fcn.004156b0
jmp 0x42895b
mov esi, dword [0x4cb4f4]
call fcn.00415450
mov esi, dword [esp + 0x10]
push 0
fstp qword [esp + 0x34]
mov eax, ebx
call fcn.004156b0
fadd qword [esp + 0x30]
sub esp, 8
fstp qword [esp]
push ebx
call fcn.00415520
jmp 0x4288fc
mov ecx, dword [0x4cb4f8]
movzx eax, word [ecx]
test ax, ax
je 0x428a6c
call fcn.00409dd0
movzx edx, ax
push edx
push 0x4ac00c
call fcn.00491a11
add esp, 8
test eax, eax
je 0x428a6c
mov ecx, dword [0x4cb49c]
mov edi, dword [0x4cb4f4]
test ecx, ecx
je 0x4289e0
cmp word [edi], 0
jne 0x4289e0
mov al, byte [ecx + 0x17]
test al, al
jne 0x4289cd
mov eax, dword [ecx + 0xc]
mov al, byte [eax + 0x17]
cmp al, 1
jne 0x4289e0
test ecx, ecx
je 0x4289e0
push 0
push 1
call fcn.00401280
mov edi, eax
push 0
push 1
mov ecx, ebx
call fcn.00401280
push eax
lea ebx, [esp + 0x5f]
mov eax, edi
call fcn.00477040
add esp, 4
cmp byte [esp + 0x5b], 0
mov edi, eax
mov ebx, edx
je 0x428a1f
mov ecx, dword [esp + 0x18]
push 1
push 0
push 0xffffffffffffffff
push 0x4a48a0
push ecx
call fcn.0047a5f0
jmp 0x4288fc
mov edx, dword [0x4cb4f8]
mov ax, word [edx]
call fcn.00409dd0
movzx eax, ax
cmp eax, 0x44
je 0x428a4e
cmp eax, 0x48
je 0x428a45
cmp eax, 0x4d
jne 0x428a60
push 0
push 0x3c
jmp 0x428a55
push 0
push 0xe10
jmp 0x428a55
push 0
push 0x15180
push ebx
push edi
call fcn.0049f540
mov edi, eax
mov ebx, edx
mov eax, dword [esp + 0x18]
push ebx
push edi
push eax
jmp 0x4288f7
mov eax, dword [esi + 8]
xor edx, edx
cmp dword [eax + 0x1c], edx
je 0x428a8a
cmp byte [eax + 0x11], dl
jne 0x428a8a
mov edi, 1
mov dword [esp + 0x14], edi
mov dword [esp + 0x28], edx
jmp 0x428add
mov edi, dword [0x4cb49c]
mov eax, dword [0x4cb4f4]
mov dword [esp + 0x14], edx
cmp edi, edx
je 0x428ac7
cmp word [eax], dx
jne 0x428ac7
mov cl, byte [edi + 0x17]
test cl, cl
jne 0x428aaf
mov ecx, dword [edi + 0xc]
mov cl, byte [ecx + 0x17]
cmp cl, 1
jne 0x428ac7
mov dword [esp + 0x28], edi
cmp edi, edx
je 0x428acb
push 1
mov ecx, edi
call fcn.00415580
jmp 0x428adb
mov dword [esp + 0x28], edx
push 1
push 1
push 0
push 1
call fcn.00477120
add esp, 0x10
mov edi, eax
push 1
mov ecx, ebx
call fcn.00415580
cmp edi, 2
je 0x428b60
cmp eax, 2
je 0x428b60
cmp dword [esp + 0x14], 0
je 0x428b20
mov edx, dword [esi + 8]
mov eax, dword [edx + 0x1c]
mov edi, dword [eax]
mov eax, dword [eax + 4]
mov dword [esp + 0xbc], eax
push 0
mov eax, ebx
call fcn.00415630
sub eax, edi
sbb edx, dword [esp + 0xbc]
jmp 0x4288f4
mov eax, dword [esp + 0x28]
test eax, eax
je 0x428b31
push 0
call fcn.00415630
jmp 0x428b40
mov esi, dword [0x4cb4f4]
call fcn.00415420
mov esi, dword [esp + 0x10]
mov edi, eax
push 0
mov eax, ebx
mov dword [esp + 0xc0], edx
call fcn.00415630
sub eax, edi
sbb edx, dword [esp + 0xbc]
jmp 0x4288f4
cmp dword [esp + 0x14], 0
je 0x428b71
mov ecx, dword [esi + 8]
mov edx, dword [ecx + 0x1c]
fild qword [edx]
jmp 0x428b91
mov eax, dword [esp + 0x28]
test eax, eax
je 0x428b82
push 0
call fcn.004156b0
jmp 0x428b91
mov esi, dword [0x4cb4f4]
call fcn.00415450
mov esi, dword [esp + 0x10]
push 0
fstp qword [esp + 0x34]
mov eax, ebx
call fcn.004156b0
fsub qword [esp + 0x30]
sub esp, 8
fstp qword [esp]
push ebx
call fcn.00415520
jmp 0x4288fc
mov eax, dword [esi + 8]
cmp dword [eax + 0x1c], 0
je 0x428bcf
cmp byte [eax + 0x11], 0
jne 0x428bcf
mov edi, 1
mov dword [esp + 0x14], edi
xor ebx, ebx
jmp 0x428c12
mov ebx, dword [0x4cb49c]
mov eax, dword [0x4cb4f4]
mov dword [esp + 0x14], 0
test ebx, ebx
je 0x428bfe
cmp word [eax], 0
jne 0x428bfe
mov cl, byte [ebx + 0x17]
test cl, cl
jne 0x428bf9
mov ecx, dword [ebx + 0xc]
mov cl, byte [ecx + 0x17]
cmp cl, 1
je 0x428c3b
xor ebx, ebx
push 1
push 1
push 0
push 1
call fcn.00477120
add esp, 0x10
mov edi, eax
mov ecx, dword [esp + 0x18]
push 1
call fcn.00415580
cmp edi, 2
je 0x428c8c
cmp eax, 2
je 0x428c8c
cmp dword [esp + 0x14], 0
je 0x428c4a
mov edx, dword [esi + 8]
mov eax, dword [edx + 0x1c]
mov edi, dword [eax]
mov ebx, dword [eax + 4]
jmp 0x428c6c
test ebx, ebx
je 0x428c00
push 1
mov ecx, ebx
call fcn.00415580
jmp 0x428c10
test ebx, ebx
je 0x428c59
push 0
mov eax, ebx
call fcn.00415630
jmp 0x428c68
mov esi, dword [0x4cb4f4]
call fcn.00415420
mov esi, dword [esp + 0x10]
mov ebx, edx
mov edi, eax
mov eax, dword [esp + 0x18]
push 0
call fcn.00415630
push ebx
push edi
push edx
push eax
call fcn.00497060
push edx
push eax
mov eax, dword [esp + 0x20]
push eax
jmp 0x4288f7
cmp dword [esp + 0x14], 0
je 0x428c9d
mov ecx, dword [esi + 8]
mov edx, dword [ecx + 0x1c]
fild qword [edx]
jmp 0x428cbb
test ebx, ebx
je 0x428cac
push 0
mov eax, ebx
call fcn.004156b0
jmp 0x428cbb
mov esi, dword [0x4cb4f4]
call fcn.00415450
mov esi, dword [esp + 0x10]
mov edi, dword [esp + 0x18]
fstp qword [esp + 0x30]
push 0
mov eax, edi
call fcn.004156b0
fmul qword [esp + 0x30]
sub esp, 8
fstp qword [esp]
push edi
call fcn.00415520
jmp 0x4288fc
mov eax, dword [esi + 8]
cmp dword [eax + 0x1c], 0
je 0x428cfd
cmp byte [eax + 0x11], 0
jne 0x428cfd
mov edi, 1
mov dword [esp + 0x14], edi
xor ebx, ebx
jmp 0x428d40
mov ebx, dword [0x4cb49c]
mov eax, dword [0x4cb4f4]
mov dword [esp + 0x14], 0
test ebx, ebx
je 0x428d2c
cmp word [eax], 0
jne 0x428d2c
mov cl, byte [ebx + 0x17]
test cl, cl
jne 0x428d27
mov ecx, dword [ebx + 0xc]
mov cl, byte [ecx + 0x17]
cmp cl, 1
je 0x428d6d
xor ebx, ebx
push 1
push 1
push 0
push 1
call fcn.00477120
add esp, 0x10
mov edi, eax
mov ecx, dword [esp + 0x18]
push 1
call fcn.00415580
cmp edi, 2
je 0x428dd2
cmp eax, 2
je 0x428dd2
cmp dword [esp + 0x14], 0
je 0x428d7c
mov edx, dword [esi + 8]
mov eax, dword [edx + 0x1c]
mov edi, dword [eax]
mov ebx, dword [eax + 4]
jmp 0x428d9e
test ebx, ebx
je 0x428d2e
push 1
mov ecx, ebx
call fcn.00415580
jmp 0x428d3e
test ebx, ebx
je 0x428d8b
push 0
mov eax, ebx
call fcn.00415630
jmp 0x428d9a
mov esi, dword [0x4cb4f4]
call fcn.00415420
mov esi, dword [esp + 0x10]
mov ebx, edx
mov edi, eax
mov eax, edi
or eax, ebx
jne 0x428db2
mov ecx, dword [esp + 0x18]
call fcn.00415490
jmp 0x4288fc
mov eax, dword [esp + 0x18]
push 0
call fcn.00415630
push ebx
push edi
push edx
push eax
call fcn.0049f540
mov ecx, dword [esp + 0x18]
push edx
push eax
push ecx
jmp 0x4288f7
cmp dword [esp + 0x14], 0
je 0x428de3
mov edx, dword [esi + 8]
mov eax, dword [edx + 0x1c]
fild qword [eax]
jmp 0x428e01
test ebx, ebx
je 0x428df2
push 0
mov eax, ebx
call fcn.004156b0
jmp 0x428e01
mov esi, dword [0x4cb4f4]
call fcn.00415450
mov esi, dword [esp + 0x10]
fst qword [esp + 0x30]
fldz
fucompp
fnstsw ax
test ah, 0x44
jp 0x428e1e
mov ecx, dword [esp + 0x18]
call fcn.00415490
jmp 0x4288fc
mov edi, dword [esp + 0x18]
push 0
mov eax, edi
call fcn.004156b0
fdiv qword [esp + 0x30]
sub esp, 8
fstp qword [esp]
push edi
call fcn.00415520
jmp 0x4288fc
mov edi, 2
mov ecx, esi
call fcn.00423740
mov ebx, eax
test ebx, ebx
jns 0x428e56
xor ebx, ebx
jmp 0x428e68
mov edi, 1
mov ecx, esi
call fcn.004236b0
cmp ebx, eax
jle 0x428e68
mov ebx, eax
push 1
push 0
push ebx
mov ecx, dword [0x4cb4f4]
mov edx, dword [esp + 0x24]
push ecx
push edx
call fcn.0047a5f0
jmp 0x4288fc
mov edi, 2
mov ecx, esi
call fcn.00423740
mov ebx, eax
test ebx, ebx
jns 0x428e97
xor ebx, ebx
mov edi, 1
mov ecx, esi
call fcn.004236b0
cmp ebx, eax
jbe 0x428ea9
mov ebx, eax
mov ecx, dword [0x4cb4f4]
mov edx, dword [esp + 0x18]
push 1
push 0
sub eax, ebx
push ebx
lea eax, [ecx + eax*2]
push eax
push edx
call fcn.0047a5f0
jmp 0x4288fc
cmp byte [esi + 1], 4
jb 0x428efc
mov eax, dword [esi + 8]
mov ecx, dword [eax + 0x34]
cmp word [ecx], 0
je 0x428efc
mov edi, 3
mov ecx, esi
call fcn.00423740
mov dword [esp + 0x14], eax
cmp eax, 1
jge 0x428f04
mov ecx, ebx
call fcn.00415490
jmp 0x4288fc
mov dword [esp + 0x14], 0x7fffffff
mov edi, 2
mov ecx, esi
call fcn.00423740
mov edx, dword [0x4cb500]
mov ebx, eax
mov ax, word [edx]
call fcn.00409dd0
cmp ax, 0x4c
jne 0x428f53
cmp ebx, 1
jge 0x428f39
mov ecx, dword [esp + 0x18]
call fcn.00415490
jmp 0x4288fc
mov eax, dword [esp + 0x14]
mov ecx, 1
sub ecx, eax
add ebx, ecx
cmp ebx, 1
jge 0x428f5d
lea edx, [eax + ebx - 1]
mov dword [esp + 0x14], edx
cmp ebx, 1
jge 0x428f5d
mov ebx, 1
mov edi, 1
mov ecx, esi
call fcn.004236b0
cmp eax, ebx
jae 0x428f7b
mov ecx, dword [esp + 0x18]
call fcn.00415490
jmp 0x4288fc
mov ecx, edi
sub ecx, ebx
add eax, ecx
cmp dword [esp + 0x14], eax
jbe 0x428f8b
mov dword [esp + 0x14], eax
mov edx, dword [0x4cb4f4]
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
push 1
push 0
push eax
lea ebx, [edx + ebx*2 - 2]
push ebx
push ecx
call fcn.0047a5f0
jmp 0x4288fc
mov edi, 2
mov ecx, esi
call fcn.00423740
mov ebx, eax
test ebx, ebx
jns 0x428fc2
xor ebx, ebx
mov edi, 1
mov ecx, esi
call fcn.004236b0
cmp ebx, eax
jbe 0x428fd4
mov ebx, eax
mov edx, dword [0x4cb4f4]
push 1
push 0
sub eax, ebx
push eax
mov eax, dword [esp + 0x24]
lea ecx, [edx + ebx*2]
push ecx
push eax
call fcn.0047a5f0
jmp 0x4288fc
mov edi, 2
mov ecx, esi
call fcn.00423740
mov ebx, eax
test ebx, ebx
jns 0x429008
xor ebx, ebx
mov edi, 1
mov ecx, esi
call fcn.004236b0
cmp ebx, eax
jbe 0x42901a
mov ebx, eax
push 1
push 0
sub eax, ebx
push eax
jmp 0x428e6d
push 1
push 1
mov ecx, ebx
call fcn.00401280
mov edi, eax
cmp edi, dword [0x4cb4f4]
jne 0x42904c
mov al, byte [ebx + 0x17]
test al, al
jne 0x429048
mov eax, dword [ebx + 0xc]
mov al, byte [eax + 0x17]
cmp al, 1
je 0x429092
push 1
push 0
mov edi, 1
mov ecx, esi
call fcn.004236b0
push eax
push 0
push ebx
call fcn.0047a5f0
cmp eax, edi
jne case.0x428601.8
push 0
push edi
mov ecx, ebx
call fcn.00401280
mov ecx, dword [0x4cb4f4]
mov edi, eax
mov edx, edi
movzx eax, word [ecx]
mov word [edx], ax
add ecx, 2
add edx, 2
test ax, ax
jne 0x429081
mov ecx, dword [0x4cb4f8]
movzx eax, word [ecx]
test ax, ax
je 0x4290c1
call fcn.00409dd0
cmp ax, 0x54
jne 0x4290c1
mov edx, dword [0x4cb4f8]
cmp word [edx + 2], 0
jne 0x4290c1
mov eax, edi
call fcn.00415190
jmp 0x4290d5
cmp byte [esi], 0x31
push edi
jne 0x4290cf
call dword [0x4a2570]
jmp 0x4290d5
call dword [0x4a2688]
cmp byte [ebx + 0x17], 0
jne 0x4290de
mov ebx, dword [ebx + 0xc]
cmp byte [ebx + 0x17], 2
jne 0x4290fc
cmp dword [0x4cc508], 0
je 0x4290fc
mov ecx, 0x4cc4fc
call fcn.004047e0
jmp 0x4288fc
and byte [ebx + 0x15], 0x86
mov eax, 1
jmp 0x4288fc
mov eax, dword [0x4cb49c]
test eax, eax
je 0x429135
cmp byte [eax + 0x17], 0
jne 0x429121
mov ecx, dword [eax + 0xc]
mov cl, byte [ecx + 0x15]
jmp 0x429124
mov cl, byte [eax + 0x15]
test cl, 1
je 0x429135
call fcn.00415910
push 0
jmp 0x4288f5
mov edi, 1
mov ecx, esi
call fcn.004236b0
push 0
jmp 0x4288f5
mov edi, dword [0x4cb4fc]
movzx eax, word [edi]
mov dword [esp + 0x30], edi
mov dword [esp + 0x28], 0xffffffff
test ax, ax
je 0x4291e6
call fcn.00409dd0
movzx edx, ax
push edx
push 0x4ac018
call fcn.00491a11
add esp, 8
test eax, eax
je 0x4291e6
cmp word [edi + 2], 0
je 0x4291e6
lea esi, [edi + 2]
call fcn.0040f280
mov esi, dword [esp + 0x10]
mov dword [esp + 0x1c], eax
test eax, eax
jle 0x4292e3
mov eax, dword [0x4cb4f8]
cmp word [eax], 0
jne 0x4291f0
mov dword [esp + 0x28], 0
mov eax, 0x4a4930
mov edx, dword [0x4cbd60]
push 1
push 0
push 0xffffffffffffffff
push eax
push edx
call fcn.0047a5f0
mov eax, dword [esp + 0x28]
cdq
push 0x18
push edx
push eax
mov eax, dword [esp + 0x24]
call fcn.00401140
mov edi, 1
jmp 0x428906
mov dword [esp + 0x1c], 1
jmp 0x42919f
mov ecx, dword [0x4cb4f4]
mov dword [esp + 0x44], ecx
mov edi, 4
mov ecx, esi
mov dword [esp + 0x3c], eax
call fcn.00423740
mov ebx, eax
test ebx, ebx
jns 0x429212
xor ebx, ebx
mov edi, 1
mov ecx, esi
call fcn.004236b0
mov edi, eax
cmp ebx, edi
jge 0x4292e3
mov edx, dword [esp + 0x30]
movzx eax, word [edx]
cmp eax, 0x31
je 0x4292a8
call fcn.00409dd0
cmp ax, 0x52
je 0x4292a8
mov edi, 2
mov ecx, esi
call fcn.004236b0
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x44]
lea ecx, [eax + ebx*2]
mov ebx, dword [esp + 0x3c]
mov edi, 1
nop
mov edx, dword [0x4c7a54]
mov al, byte [edx + 0xf2]
test al, al
jne 0x429279
mov eax, ebx
call fcn.00477670
jmp 0x429294
cmp al, 2
jne 0x42928a
push ecx
mov eax, ebx
call fcn.004778e0
add esp, 4
jmp 0x429294
push ebx
push ecx
call fcn.00491a38
add esp, 8
test eax, eax
je 0x4292e3
cmp edi, dword [esp + 0x1c]
je 0x4292cf
mov ecx, dword [esp + 0x30]
inc edi
lea ecx, [eax + ecx*2]
jmp 0x429260
mov eax, dword [esp + 0x14]
movzx ecx, byte [eax + 0xf2]
mov edx, dword [esp + 0x1c]
push edx
mov edx, dword [esp + 0x40]
push ecx
mov ecx, dword [esp + 0x4c]
push edx
mov eax, edi
sub eax, ebx
push ecx
call fcn.00477460
add esp, 0x10
test eax, eax
je 0x4292e3
sub eax, dword [esp + 0x44]
sar eax, 1
mov dword [esp + 0x28], eax
jns 0x4291b2
mov eax, 0x4a7324
jmp 0x4291b7
push esi
call fcn.0043ea30
jmp 0x4288fc
mov eax, dword [0x4cb4f8]
mov ecx, dword [0x4cb4f4]
push eax
mov eax, dword [0x4cb4fc]
call fcn.00434770
jmp 0x4288fc
mov ecx, dword [0x4cb4fc]
mov edx, dword [0x4cb4f8]
mov eax, dword [0x4cb4f0]
push ecx
mov ecx, dword [0x4cb4f4]
push edx
push esi
call fcn.0043ec40
jmp 0x4288fc
mov eax, dword [0x4cb4f0]
push eax
mov eax, esi
call fcn.0043f430
jmp 0x4288fc
mov ecx, dword [0x4cb4f0]
push ecx
mov ecx, dword [0x4cb4f4]
push esi
call fcn.0043fab0
jmp 0x4288fc
push 0
push ecx
mov edi, 7
mov ecx, esi
call fcn.00423740
add esp, 4
push eax
mov edi, 6
mov ecx, esi
call fcn.00423740
push eax
push ecx
mov edi, 5
mov ecx, esi
call fcn.00423740
add esp, 4
push eax
mov edi, 4
mov ecx, esi
call fcn.00423740
push eax
push ecx
mov edi, 3
mov ecx, esi
call fcn.00423740
add esp, 4
push eax
mov edi, 2
mov ecx, esi
call fcn.00423740
mov ecx, dword [0x4cb510]
push eax
push esi
call fcn.0043aaf0
jmp 0x4288fc
mov edx, dword [0x4cb508]
push edx
push ecx
mov edi, 5
mov ecx, esi
call fcn.00423740
add esp, 4
push eax
mov edi, 4
mov ecx, esi
call fcn.00423740
push eax
push ecx
mov edi, 3
mov ecx, esi
call fcn.00423740
add esp, 4
push eax
mov edi, 2
mov ecx, esi
call fcn.00423740
push eax
push esi
call fcn.0043b300
jmp 0x4288fc
mov eax, dword [0x4cb4fc]
push eax
push ecx
mov edi, 2
mov ecx, esi
call fcn.00423740
mov edi, 1
mov ecx, esi
mov ebx, eax
call fcn.00423740
add esp, 4
mov ecx, eax
push esi
mov eax, ebx
call fcn.00453500
jmp 0x4288fc
mov edx, dword [edi + 0xd4]
xor eax, eax
cmp cl, 0x42
mov ecx, dword [0x4cb4f0]
sete al
push 0
push edx
push eax
push ecx
call fcn.0040f830
add esp, 0x10
mov edi, 1
jmp 0x428906
mov eax, dword [0x4cb4f0]
xor edx, edx
cmp dword [edi + 0xd4], 3
push 0
sete dl
lea edx, [edx + edx + 1]
push edx
push 0
push eax
call fcn.0040f830
add esp, 0x10
mov edi, 1
jmp 0x428906
mov ecx, dword [0x4cb4f0]
push 0
push 2
push 0
push ecx
call fcn.0040f830
add esp, 0x10
mov edi, 1
jmp 0x428906
mov edx, dword [0x4cb4f0]
push 0
push 0
push 0
push edx
call fcn.0040f830
add esp, 0x10
mov edi, 1
jmp 0x428906
mov eax, dword [0x4cb4f0]
push eax
call fcn.00411af0
add esp, 4
jmp 0x4288fc
mov edx, dword [0x4cb508]
mov eax, dword [0x4cb504]
push 0x4a48a0
push edx
mov edx, dword [0x4cb500]
push eax
mov eax, dword [0x4cb4fc]
push edx
mov edx, dword [0x4cb4f8]
push eax
mov eax, dword [0x4cb4f4]
push edx
mov edx, dword [0x4cb4f0]
push eax
push ecx
mov eax, 0x4a48a0
call fcn.00411d60
add esp, 0x20
jmp 0x4288fc
mov edx, dword [0x4cb504]
mov eax, dword [0x4cb508]
push edx
mov edx, dword [0x4cb500]
push eax
mov eax, dword [0x4cb4f8]
push edx
mov edx, dword [0x4cb4f4]
push 0x4a48a0
push 0x4a48a0
push eax
mov eax, dword [0x4cb4fc]
push edx
mov edx, dword [0x4cb4f0]
push ecx
call fcn.00411d60
add esp, 0x20
jmp 0x4288fc
mov eax, dword [0x4cb4fc]
mov edx, dword [0x4cb4f8]
push 0x4a48a0
push eax
mov eax, dword [0x4cb4f4]
push edx
mov edx, dword [0x4cb4f0]
push 0x4a48a0
push 0x4a48a0
push eax
push edx
mov eax, 0x4a48a0
push ecx
mov edx, eax
call fcn.00411d60
add esp, 0x20
jmp 0x4288fc
mov edi, 4
mov ecx, esi
call fcn.00423740
push eax
mov ecx, esi
call fcn.0043da40
jmp 0x4288fc
mov edx, dword [0x4cb4f4]
mov ebx, dword [0x4cb4f8]
mov esi, dword [0x4cb4f0]
cmp cl, 0x78
sete al
movzx ecx, al
mov eax, dword [0x4cb4fc]
push ecx
push edx
push edi
call fcn.0047b2a0
add esp, 0xc
test eax, eax
je 0x42961f
mov eax, dword [0x4c7a54]
mov eax, dword [eax + 0x54]
cmp eax, 0xffffffff
jle 0x42961f
push 1
push eax
call fcn.00401430
add esp, 8
mov esi, dword [esp + 0x10]
mov edi, 1
jmp 0x428906
mov ecx, dword [0x4cb4f0]
push 9
push 0x4ac020
push ecx
call fcn.0049109d
add esp, 0xc
test eax, eax
jne 0x429661
mov edx, dword [0x4cb4f4]
cmp word [edx], ax
jne 0x429661
mov eax, dword [0x4cb4fc]
cmp word [eax], 0
jne 0x429661
mov bl, 1
jmp 0x429663
xor bl, bl
mov al, byte [esi]
xor ecx, ecx
test bl, bl
setne cl
dec ecx
and ecx, 0x14
mov dword [esp + 0x1c], ecx
cmp al, 0x84
je 0x4296bf
cmp al, 0x85
je 0x4296bf
mov edx, dword [0x4cb4f8]
cmp word [edx], 0
je 0x429701
mov al, byte [esi]
cmp al, 0x84
je 0x429762
cmp al, 0x85
je 0x429764
mov ecx, dword [0x4cb4f8]
mov edx, dword [0x4cb4f4]
push ecx
mov ecx, dword [0x4cb4fc]
push edx
mov edx, dword [0x4cb4f0]
push eax
call fcn.004366f0
jmp 0x4288fc
mov eax, dword [0x4cb4f8]
cmp word [eax], 0
je 0x4296f5
mov edi, 2
mov ecx, esi
call fcn.004237f0
fmul qword [0x4c1ee8]
call fcn.0049f490
mov edi, dword [esp + 0x14]
mov dword [esp + 0x1c], eax
test eax, eax
jne 0x4296f5
mov dword [esp + 0x1c], 0x1f4
mov ecx, dword [0x4cb500]
cmp word [ecx], 0
jne 0x429688
test bl, bl
je 0x429688
mov eax, dword [0x4cb4f0]
add eax, 0x12
call fcn.00409e50
cmp word [eax], 0
mov dword [esp + 0x30], eax
je 0x429688
mov ebx, dword [0x4cc550]
test ebx, ebx
je 0x429688
mov edi, edi
mov edx, dword [esp + 0x30]
mov eax, dword [ebx + 4]
push edx
push eax
call fcn.00490e99
add esp, 8
test eax, eax
je 0x429751
mov ebx, dword [ebx + 0x14]
test ebx, ebx
jne 0x429730
jmp 0x429688
mov edx, dword [esp + 0x1c]
mov cl, byte [esi]
push ebx
call fcn.0047d420
jmp 0x4288fc
cmp al, 0x85
mov edx, dword [0x4cb500]
mov ebx, dword [0x4cb4f0]
sete al
movzx ecx, al
mov eax, dword [esp + 0x1c]
push ecx
mov ecx, dword [0x4cb4f4]
push edx
push eax
mov eax, dword [0x4cb4fc]
push ecx
push edi
call fcn.0047b5a0
add esp, 0x14
test eax, eax
je 0x4297af
mov edx, dword [0x4c7a54]
mov eax, dword [edx + 0x54]
cmp eax, 0xffffffff
jle 0x4297af
push 1
push eax
call fcn.00401430
add esp, 8
mov edi, 1
jmp 0x428906
mov ebx, dword [0x4cb4f4]
call fcn.0043a450
jmp 0x4288fc
mov eax, dword [0x4cb4f4]
mov ecx, dword [0x4cb4f0]
push eax
push ecx
call dword [0x4a2138]
test eax, eax
sete dl
movzx eax, dl
push eax
push esi
call fcn.004305c0
jmp 0x4288fc
lea ecx, [esp + 0xe8]
push ecx
push 0x3a98
push 1
push 0x4ac034
push 0
push 0x1a
push 0xffff
call dword [0x4a2548]
test eax, eax
sete dl
movzx eax, dl
push eax
push esi
call fcn.004305c0
jmp 0x4288fc
mov ecx, dword [0x4cb4f4]
mov eax, dword [0x4cb4f0]
push ecx
push esi
call fcn.00454cf0
jmp 0x4288fc
mov eax, dword [0x4cb4f0]
mov ecx, 0x4cd020
call fcn.00474920
mov eax, dword [0x4cb4f4]
mov ecx, 0x4cd02c
call fcn.00474920
mov eax, dword [0x4cb4f8]
mov ecx, 0x4cd038
call fcn.00474920
mov edi, 1
jmp 0x428906
mov ecx, dword [0x4cb4f8]
mov eax, 0x4a72f4
call fcn.00477670
test eax, eax
setne bl
mov dl, 3
cmp dl, byte [esi + 1]
mov edx, dword [0x4cb4f8]
sbb eax, eax
and eax, dword [0x4cb4a4]
mov byte [esp + 0xd0], bl
mov ecx, dword [esp + 0xd0]
push eax
push 1
push ecx
push 0
push edx
mov edx, dword [0x4cb4f4]
test bl, bl
sete al
movzx ecx, al
push ecx
push edx
mov edx, dword [0x4cb4f0]
push 0
push 0x4cc518
call fcn.004318a0
test bl, bl
je 0x4288fc
test eax, eax
mov eax, 0x4a4930
jne 0x4298ea
mov eax, 0x4ac04c
push 1
push 0
push 0xffffffffffffffff
push eax
mov eax, dword [0x4cbd60]
push eax
call fcn.0047a5f0
jmp 0x4288fc
push esi
call fcn.004367d0
jmp 0x4288fc
cmp byte [esi + 1], 2
jbe 0x42994f
mov ecx, dword [0x4cb508]
mov edx, dword [0x4cb504]
mov eax, dword [0x4cb500]
push ecx
mov ecx, dword [0x4cb4fc]
push edx
mov edx, dword [0x4cb4f8]
push eax
mov eax, dword [0x4cb4f4]
push ecx
mov ecx, dword [0x4cb50c]
push edx
mov edx, dword [0x4cb4f0]
call fcn.00436ed0
jmp 0x4288fc
mov eax, dword [0x4cb4f4]
mov ecx, dword [0x4cb4f0]
push 0x4a48a0
push 0x4a48a0
push 0x4a48a0
push eax
push ecx
mov ecx, 0x4a48a0
mov eax, ecx
mov edx, ecx
call fcn.00436ed0
jmp 0x4288fc
mov edx, dword [0x4cb518]
mov eax, dword [0x4cb514]
mov ecx, dword [0x4cb510]
push edx
mov edx, dword [0x4cb50c]
push eax
mov eax, dword [0x4cb508]
push ecx
mov ecx, dword [0x4cb4fc]
push edx
mov edx, dword [0x4cb4f8]
push eax
mov eax, dword [0x4cb4f4]
push ecx
mov ecx, dword [0x4cb4f0]
push edx
mov edx, dword [0x4cb504]
push eax
push ecx
mov ecx, dword [0x4cb500]
push esi
call fcn.00453940
jmp 0x4288fc
mov eax, dword [0x4cb500]
xor edx, edx
cmp cl, 0x47
mov ecx, dword [0x4cb4fc]
sete dl
push edx
mov edx, dword [0x4cb4f4]
push eax
mov eax, dword [0x4cb4f0]
push ecx
mov ecx, dword [0x4cb504]
push edx
mov edx, dword [0x4cb4f8]
push eax
push esi
call fcn.00436ff0
jmp 0x4288fc
mov esi, dword [0x4cb4fc]
push 1
xor bl, bl
call fcn.0040f2b0
add esp, 4
mov byte [esp + 0xd8], al
test al, al
jne 0x429a48
mov ecx, dword [0x4cb4fc]
push ecx
mov ecx, dword [esp + 0x14]
push 0
push 0x4aa94c
call fcn.00430920
mov esi, dword [esp + 0x10]
jmp 0x4288fc
mov edx, dword [0x4cb500]
cmp word [edx], 0
je 0x429a64
mov ecx, dword [esp + 0x10]
mov edi, 4
call fcn.00423740
jmp 0x429a69
mov eax, 1
mov ecx, dword [0x4cb508]
mov edx, dword [0x4cb4f8]
push ecx
mov ecx, dword [0x4cb4f0]
push edx
mov edx, dword [0x4cb504]
push ecx
mov ecx, dword [esp + 0x1c]
push edx
mov edx, dword [0x4cb4f4]
push eax
mov eax, dword [esp + 0xec]
push eax
push ecx
mov ecx, dword [0x4cb50c]
call fcn.004370b0
mov esi, dword [esp + 0x10]
jmp 0x4288fc
mov edx, dword [0x4cb50c]
mov eax, dword [0x4cb508]
mov ecx, dword [0x4cb500]
push edx
mov edx, dword [0x4cb4fc]
push eax
mov eax, dword [0x4cb4f8]
push ecx
mov ecx, dword [0x4cb4f4]
push edx
mov edx, dword [0x4cb4f0]
push eax
push ecx
mov ecx, dword [0x4cb510]
push edx
mov edx, dword [0x4cb504]
push esi
call fcn.00437750
jmp 0x4288fc
mov eax, dword [0x4cb510]
mov ecx, dword [0x4cb50c]
mov edx, dword [0x4cb508]
push eax
mov eax, dword [0x4cb504]
push ecx
mov ecx, dword [0x4cb500]
push edx
push eax
push ecx
mov ecx, esi
call fcn.00437980
jmp 0x4288fc
mov edx, dword [0x4cb500]
mov eax, dword [0x4cb4fc]
mov ecx, dword [0x4cb4f8]
push edx
mov edx, dword [0x4cb4f4]
push eax
push ecx
push edx
push esi
call fcn.00437ad0
jmp 0x4288fc
mov eax, dword [0x4cb4fc]
mov ecx, dword [0x4cb4f8]
mov edx, dword [0x4cb4f0]
push eax
push ecx
mov ecx, dword [0x4cb500]
push edx
mov edx, dword [0x4cb4f4]
push esi
call fcn.00437cb0
jmp 0x4288fc
mov eax, dword [0x4cb500]
mov ecx, dword [0x4cb4fc]
mov edx, dword [0x4cb4f4]
push eax
push ecx
mov ecx, dword [0x4cb504]
push edx
mov edx, dword [0x4cb4f8]
push esi
mov esi, dword [0x4cb4f0]
call fcn.00437dc0
mov esi, dword [esp + 0x10]
jmp 0x4288fc
mov eax, dword [0x4cb500]
mov ecx, dword [0x4cb4f4]
mov edx, dword [0x4cb4f8]
push eax
mov eax, dword [0x4cb4fc]
push ecx
mov ecx, dword [0x4cb504]
push esi
call fcn.00437e80
jmp 0x4288fc
mov edx, dword [0x4cb508]
mov eax, dword [0x4cb504]
mov ecx, dword [0x4cb500]
push edx
mov edx, dword [0x4cb4fc]
push eax
mov eax, dword [0x4cb4f8]
push ecx
mov ecx, dword [0x4cb4f4]
push edx
mov edx, dword [0x4cb4f0]
push eax
push esi
call fcn.00453ca0
jmp 0x4288fc
mov ecx, dword [0x4cb50c]
mov edx, dword [0x4cb508]
mov eax, dword [0x4cb504]
push ecx
mov ecx, dword [0x4cb500]
push edx
mov edx, dword [0x4cb4fc]
push eax
mov eax, dword [0x4cb4f8]
push ecx
mov ecx, dword [0x4cb4f4]
push edx
push eax
push esi
call fcn.00454470
jmp 0x4288fc
mov ecx, dword [0x4cb500]
mov eax, dword [0x4cb4fc]
mov edx, dword [0x4cb4f8]
mov edi, dword [0x4cb4f4]
push ecx
mov ecx, dword [0x4cb504]
call fcn.00438610
jmp 0x4288fc
mov edx, dword [0x4cb508]
mov eax, dword [0x4cb504]
mov ecx, dword [0x4cb500]
push edx
mov edx, dword [0x4cb4f8]
push eax
mov eax, dword [0x4cb4f4]
push ecx
mov ecx, dword [0x4cb4f0]
push edx
mov edx, dword [0x4cb4fc]
push eax
push ecx
mov ecx, dword [0x4cb50c]
call fcn.00438680
jmp 0x4288fc
cmp cl, 0x92
sete dl
movzx eax, dl
push eax
mov eax, esi
call fcn.004387c0
jmp 0x4288fc
mov ecx, dword [0x4cb4f4]
mov edx, dword [0x4cb4f0]
push ecx
mov ecx, dword [0x4cb4f8]
push esi
call fcn.00438ae0
jmp 0x4288fc
mov edx, dword [0x4cb504]
mov eax, dword [0x4cb500]
mov ecx, dword [0x4cb4fc]
push edx
mov edx, dword [0x4cb4f8]
push eax
push ecx
mov ecx, dword [0x4cb4f4]
push edx
mov edx, dword [0x4cb4f0]
push esi
call fcn.00439170
jmp 0x4288fc
cmp byte [esi + 1], 1
jbe 0x429d3a
mov eax, dword [0x4cb4fc]
mov ecx, dword [0x4cb4f8]
mov edx, dword [0x4cb4f0]
push eax
mov eax, dword [0x4cb4f4]
push ecx
mov ecx, dword [0x4cb500]
call fcn.00439550
jmp 0x4288fc
mov edi, dword [0x4cb4f0]
mov ecx, 0x4a48a0
push 0x4a48a0
mov eax, ecx
mov edx, ecx
call fcn.00444b00
test eax, eax
je 0x429d5f
push edi
push eax
call dword [0x4a2668]
mov eax, 1
jmp 0x4288fc
mov edx, dword [0x4cb4fc]
mov ecx, dword [0x4cb500]
mov eax, dword [0x4cb4f8]
push edx
mov edx, dword [0x4cb4f4]
call fcn.00439580
jmp 0x4288fc
mov eax, dword [0x4cb4fc]
mov ecx, dword [0x4cb500]
mov edx, dword [0x4cb4f4]
push eax
mov eax, dword [0x4cb4f8]
call fcn.004396e0
jmp 0x4288fc
mov ecx, dword [0x4cb500]
mov edx, dword [0x4cb4fc]
mov eax, dword [0x4cb4f4]
push ecx
mov ecx, dword [0x4cb504]
push edx
mov edx, dword [0x4cb4f8]
push eax
push esi
call fcn.00439800
jmp 0x4288fc
mov ecx, dword [0x4cb4fc]
mov eax, dword [0x4cb4f8]
mov edx, dword [0x4cb4f4]
push ecx
mov ecx, dword [0x4cb500]
push esi
call fcn.0043a070
jmp 0x4288fc
mov edx, dword [0x4cb50c]
mov eax, dword [0x4cb508]
mov ecx, dword [0x4cb504]
push edx
mov edx, dword [0x4cb500]
push eax
push ecx
push edx
mov eax, esi
call fcn.0043a2d0
jmp 0x4288fc
mov eax, dword [0x4cb4f8]
mov ecx, dword [0x4cb4f4]
push eax
push esi
call fcn.0043a530
jmp 0x4288fc
push 0
push 0x1a3
push 0x111
push 0
push 0x4a960c
call dword [0x4a2598]
push eax
call dword [0x4a2594]
mov ecx, dword [0x4c7a54]
mov eax, dword [ecx + 0x54]
cmp eax, 0xffffffff
jle 0x4297af
push 1
push eax
call fcn.00401430
add esp, 8
mov edi, 1
jmp 0x428906
push 0
push 0x1a0
push 0x111
push 0
push 0x4a960c
call dword [0x4a2598]
push eax
call dword [0x4a2594]
mov edx, dword [0x4c7a54]
mov eax, dword [edx + 0x54]
cmp eax, 0xffffffff
jle 0x4297af
push 1
push eax
call fcn.00401430
add esp, 8
mov edi, 1
jmp 0x428906
mov eax, dword [esi + 0xc]
test eax, eax
jne 0x429eff
mov edi, dword [0x4cb4f0]
cmp word [edi], ax
je 0x429eff
mov eax, 0x4cc518
call fcn.0041c720
test eax, eax
jne 0x429eff
mov eax, dword [0x4cb4f0]
push eax
push 0
push 0x4a75a8
mov ecx, esi
call fcn.00430920
jmp 0x4288fc
mov dword [0x4ccfa8], eax
mov edi, 1
jmp 0x428906
mov eax, dword [esi + 0xc]
mov cl, 1
cmp cl, byte [esi + 1]
mov ecx, dword [0x4cb4f8]
sbb edx, edx
and edx, dword [0x4cb49c]
push edx
mov edx, dword [0x4cb4f4]
push eax
mov eax, dword [0x4cb4f0]
push ecx
push edx
push eax
call fcn.0040b360
add esp, 0x14
jmp 0x4288fc
mov edi, dword [esi + 0xc]
test edi, edi
jne 0x429fe6
push edi
mov edi, dword [0x4cb4f0]
mov eax, ebx
mov ebx, 0x4cc518
call fcn.0041c760
mov edi, eax
test edi, edi
jne 0x429fe6
mov eax, dword [0x4cb4f0]
cmp word [eax], di
je 0x429f86
push eax
push edi
push 0x4a75a8
mov ecx, esi
call fcn.00430920
jmp 0x4288fc
cmp byte [esi + 1], 0
jbe 0x429fb0
mov ecx, dword [esi + 8]
mov eax, dword [ecx + 4]
cmp word [eax], 0
je 0x429fb0
push 0x4a48a0
push 0
push 0x4a7ad4
mov ecx, esi
call fcn.00430920
jmp 0x4288fc
mov eax, dword [esp + 0x14]
mov edi, dword [eax + 0xbc]
test edi, edi
jne 0x429fe6
mov eax, dword [eax + 0xc0]
test eax, eax
je 0x429fce
mov edi, dword [eax]
test edi, edi
jne 0x429fe6
push 0x4a48a0
push 0
push 0x4ac058
mov ecx, esi
call fcn.00430920
jmp 0x4288fc
mov eax, dword [0x4cb4f4]
push 0
push 1
push 1
push 1
call fcn.00477120
add esp, 0x10
test eax, eax
jne 0x42a0a1
mov esi, dword [0x4cb4f4]
push eax
call fcn.00409ef0
add esp, 4
test eax, eax
jne 0x42a066
mov edx, dword [0x4cb4f4]
push 0x4a6900
push edx
call fcn.00490e99
add esp, 8
test eax, eax
jne 0x42a047
push edi
push 0x4cc518
call fcn.0041c630
mov esi, dword [esp + 0x10]
mov edi, 1
jmp 0x428906
mov eax, dword [0x4cb4f4]
mov ecx, dword [esp + 0x10]
push eax
push 0
push 0x4a7b00
call fcn.00430920
mov esi, dword [esp + 0x10]
jmp 0x4288fc
jle 0x42a09d
cmp eax, 2
jg 0x42a09d
cmp eax, 1
mov eax, dword [0x4cb4f8]
sete cl
push 0
movzx edx, cl
push edx
push eax
push 0x4a48a0
push edi
mov edi, 0x4cc518
call fcn.0041c350
mov esi, dword [esp + 0x10]
mov edi, 1
jmp 0x428906
mov esi, dword [esp + 0x10]
mov ecx, dword [0x4cb4f4]
cmp word [ecx], 0
mov edx, dword [0x4cb4f8]
jne 0x42a0bd
cmp word [edx], 0
je 0x42a0bd
mov al, 1
jmp 0x42a0bf
xor al, al
push eax
push 1
push edx
push ecx
push edi
mov edi, 0x4cc518
call fcn.0041c350
mov edi, 1
jmp 0x428906
mov eax, dword [0x4cb4f0]
cmp word [eax], 0
mov ebx, 0x10
je 0x42a10e
push 0x4ac0b4
push eax
call fcn.00490e99
add esp, 8
test eax, eax
je 0x42a10e
xor edi, edi
mov ecx, esi
call fcn.00423740
mov edi, dword [esp + 0x14]
mov ebx, eax
test ebx, ebx
je 0x42a113
mov eax, 1
mov byte [edi + 0xee], al
test al, al
je 0x42a13d
or eax, 0xffffffff
mov dword [edi + 0xd8], ebx
mov byte [edi + 0xec], 0
mov dword [edi], eax
mov dword [edi + 4], eax
mov dword [edi + 0x24], eax
lea edi, [eax + 2]
jmp 0x428906
mov dword [edi + 0xd8], 5
mov byte [edi + 0xec], 1
mov edi, 1
jmp 0x428906
mov esi, dword [0x4cb4f0]
call fcn.004166e0
dec eax
je 0x42a209
dec eax
je 0x42a1be
dec eax
jne 0x42a21e
mov ecx, dword [0x4cb4f4]
cmp word [ecx], ax
je 0x42a1aa
mov ecx, dword [esp + 0x10]
lea edi, [eax + 1]
call fcn.00423740
or eax, edx
jne 0x42a1a6
mov esi, dword [esp + 0x10]
mov eax, edi
mov edi, dword [esp + 0x14]
mov byte [edi + 0xed], al
mov edi, eax
jmp 0x428906
mov edi, dword [esp + 0x14]
mov esi, dword [esp + 0x10]
xor eax, eax
mov byte [edi + 0xed], al
lea edi, [eax + 1]
jmp 0x428906
mov edx, dword [0x4cb4f4]
cmp word [edx], 0
je 0x42a1dd
mov ecx, dword [esp + 0x10]
mov edi, 1
call fcn.00423740
mov dword [0x4cd014], eax
mov eax, dword [0x4cb4f8]
cmp word [eax], 0
je 0x42a21e
mov ecx, dword [esp + 0x10]
mov edi, 2
call fcn.00423740
mov esi, dword [esp + 0x10]
mov dword [0x4cd010], eax
mov edi, 1
jmp 0x428906
mov ecx, dword [esp + 0x10]
mov edi, 1
call fcn.00423740
mov ecx, dword [esp + 0x14]
mov dword [ecx + 0x2c], eax
mov esi, dword [esp + 0x10]
mov edi, 1
jmp 0x428906
mov ebx, dword [esi + 0xc]
test ebx, ebx
jne 0x42a24f
mov edi, dword [0x4cb4f0]
push 1
push 0x4cc518
call fcn.004244b0
mov ebx, eax
test ebx, ebx
je case.0x428601.8
mov edi, dword [0x4cb4fc]
cmp word [edi], 0
je 0x42a28c
mov eax, dword [esi + 0x18]
test eax, eax
jne 0x42a289
mov eax, 0x4cc518
call fcn.0041c720
test eax, eax
jne 0x42a289
mov edx, dword [0x4cb4fc]
push edx
push eax
push 0x4a75a8
mov ecx, esi
call fcn.00430920
jmp 0x4288fc
mov dword [ebx + 0x10], eax
mov eax, dword [0x4cb504]
mov ecx, dword [0x4cb500]
mov edx, dword [0x4cb4f8]
push eax
mov eax, dword [0x4cb4f4]
push ecx
push edx
push eax
push ebx
call fcn.0047d0f0
jmp 0x4288fc
mov edi, dword [esi + 0xc]
test edi, edi
jne 0x42a2f2
mov eax, dword [0x4cb4f0]
mov ebx, eax
cmp word [eax], di
je 0x42a32d
mov edi, dword [0x4cc550]
test edi, edi
je 0x42a32d
mov edi, edi
mov ecx, dword [edi + 4]
push ebx
push ecx
call fcn.00490e99
add esp, 8
test eax, eax
je 0x42a2f2
mov edi, dword [edi + 0x14]
test edi, edi
jne 0x42a2d0
mov edi, 1
jmp 0x428906
mov eax, dword [0x4cb4f4]
cmp word [eax], 0
je 0x42a323
push 0x4a7e84
push eax
call fcn.00490e99
add esp, 8
test eax, eax
jne 0x42a323
mov al, 1
mov ecx, edi
push eax
call fcn.0047d810
mov edi, 1
jmp 0x428906
xor al, al
mov ecx, edi
push eax
call fcn.0047d810
mov edi, 1
jmp 0x428906
mov edi, dword [esi + 0xc]
test edi, edi
jne 0x42a382
mov eax, dword [0x4cb4f0]
mov ebx, eax
cmp word [eax], di
je 0x42a3ec
mov edi, dword [0x4cc550]
test edi, edi
je 0x42a3ec
lea esp, [esp]
mov edx, dword [edi + 4]
push ebx
push edx
call fcn.00490e99
add esp, 8
test eax, eax
je 0x42a382
mov edi, dword [edi + 0x14]
test edi, edi
jne 0x42a360
mov edi, 1
jmp 0x428906
mov eax, dword [0x4cb4f4]
cmp word [eax], 0
je 0x42a3e3
push 0x4aa668
push eax
call fcn.00490e99
add esp, 8
test eax, eax
jne 0x42a3b3
push edi
xor edx, edx
mov cl, 0x84
call fcn.0047d420
mov edi, 1
jmp 0x428906
mov eax, dword [0x4cb4f4]
cmp word [eax], 0
je 0x42a3e3
push 0x4a7e84
push eax
call fcn.00490e99
add esp, 8
test eax, eax
jne 0x42a3e3
mov al, 1
push eax
push edi
call fcn.0047d4e0
mov edi, 1
jmp 0x428906
xor al, al
push eax
push edi
call fcn.0047d4e0
mov edi, 1
jmp 0x428906
mov eax, dword [0x4cb4f8]
push eax
mov eax, dword [0x4cb4f4]
call fcn.00440630
jmp 0x4288fc
test ebx, ebx
jne 0x42a423
lea edi, [ebx + 1]
mov ecx, esi
call fcn.00423740
call fcn.00414e70
jmp 0x428906
mov eax, dword [0x4cb4f4]
push 0
push 1
push 0
push 1
call fcn.00477120
add esp, 0x10
cmp eax, 2
je 0x42a45b
mov eax, dword [0x4cb4f8]
push 0
push 1
push 0
push 1
call fcn.00477120
add esp, 0x10
cmp eax, 2
jne 0x42a4e8
mov ecx, dword [0x4cb4f4]
cmp word [ecx], 0
je 0x42a475
mov edi, 1
mov ecx, esi
call fcn.004237f0
jmp 0x42a477
fldz
mov edx, dword [0x4cb4f8]
fst qword [esp + 0x30]
cmp word [edx], 0
je 0x42a4b2
mov edi, 2
fstp st(0)
mov ecx, esi
call fcn.004237f0
fst qword [esp + 0x78]
fld qword [esp + 0x30]
fxch st(1)
fcom st(1)
fnstsw ax
test ah, 5
jp 0x42a4be
fstp qword [esp + 0x30]
fstp qword [esp + 0x78]
jmp 0x42a4c2
fld qword [0x4c1f70]
fst qword [esp + 0x78]
jmp 0x42a49f
fstp st(0)
fstp st(0)
call fcn.00414fe0
fld qword [esp + 0x78]
fld qword [esp + 0x30]
sub esp, 8
fsub st(1), st(0)
fxch st(2)
fmulp st(1)
faddp st(1)
fstp qword [esp]
push ebx
call fcn.00415520
jmp 0x4288fc
mov eax, dword [0x4cb4f4]
cmp word [eax], 0
je 0x42a507
mov edi, 1
mov ecx, esi
call fcn.00423740
mov ebx, eax
mov dword [esp + 0x1c], eax
jmp 0x42a50d
xor ebx, ebx
mov dword [esp + 0x1c], ebx
mov ecx, dword [0x4cb4f8]
cmp word [ecx], 0
je 0x42a529
mov edi, 2
mov ecx, esi
call fcn.00423740
mov edi, eax
jmp 0x42a52e
mov edi, 0x7fffffff
cmp ebx, edi
jle 0x42a53c
mov eax, ebx
mov ebx, edi
mov dword [esp + 0x1c], ebx
mov edi, eax
call fcn.00414f90
mov ecx, eax
mov eax, ebx
cdq
mov ebx, eax
mov dword [esp + 0x30], edx
mov eax, edi
cdq
sub eax, ebx
sbb edx, dword [esp + 0x30]
add eax, 1
adc edx, 0
push edx
push eax
push 0
push ecx
call fcn.0049ffa0
add eax, dword [esp + 0x1c]
jmp 0x4291ce
mov ecx, dword [0x4cb4f4]
push 1
push esi
call fcn.00440750
jmp 0x4288fc
mov edx, dword [0x4cb4f8]
mov eax, dword [0x4cb4f4]
mov ecx, dword [0x4cb4f0]
push edx
push esi
call fcn.00440890
jmp 0x4288fc
mov ecx, dword [0x4cb4f8]
mov edx, dword [0x4cb4f4]
push esi
call fcn.00440b40
jmp 0x4288fc
mov eax, dword [0x4cb4fc]
mov edx, dword [0x4cb4f4]
push eax
xor eax, eax
cmp cl, 0x9d
sete al
push edx
dec eax
and eax, dword [0x4cb4f0]
push eax
push esi
call fcn.00441160
jmp 0x4288fc
mov ecx, dword [0x4cb4f4]
cmp word [ecx], 0
je 0x42a5f8
mov edi, 1
mov ecx, esi
call fcn.00423740
dec eax
jmp 0x42a5fa
xor eax, eax
cdq
test edx, edx
jg 0x42a60b
jl 0x42a605
test eax, eax
jae 0x42a60b
xor eax, eax
mov dword [esp + 0x34], eax
cmp byte [esi], 0x9f
push eax
jne 0x42a61f
call fcn.00442270
mov esi, dword [esp + 0x10]
jmp 0x4288fc
mov edi, dword [0x4cb4f0]
mov ebx, esi
call fcn.00442360
jmp 0x4288fc
mov edx, dword [0x4cb4f4]
cmp word [edx], 0
je 0x42a64f
mov edi, 1
mov ecx, esi
call fcn.00423740
mov ebx, eax
test ebx, ebx
jns 0x42a654
mov ebx, 0x96
mov eax, dword [0x4cb4f0]
cmp word [eax], 0
je 0x42a67a
xor edi, edi
mov ecx, esi
call fcn.00423740
push ebx
push eax
call dword [0x4a213c]
mov edi, 1
jmp 0x428906
mov eax, 0x20b
push ebx
push eax
call dword [0x4a213c]
mov edi, 1
jmp 0x428906
mov eax, dword [0x4cb4f4]
cmp word [eax], 0
je 0x42a6b3
push 0x4ac0bc
push eax
call fcn.00490e99
add esp, 8
test eax, eax
je 0x42a6d8
mov eax, dword [0x4cb4f4]
push 0x4a7324
push eax
call fcn.00490e99
add esp, 8
test eax, eax
je 0x42a6d8
xor al, al
push eax
mov eax, dword [0x4cb4f0]
push esi
call fcn.004424c0
jmp 0x4288fc
mov eax, 1
push eax
mov eax, dword [0x4cb4f0]
push esi
call fcn.004424c0
jmp 0x4288fc
cmp byte [esi + 1], 2
jae 0x42a6f9
mov edi, dword [edi + 0x18]
jmp 0x42a6fb
xor edi, edi
mov ecx, dword [0x4cb4f0]
mov edx, dword [0x4cb4f4]
push edi
push ecx
push edx
push esi
call fcn.004437a0
jmp 0x4288fc
mov ecx, dword [0x4cb4f4]
push esi
call fcn.00442e90
jmp 0x4288fc
mov eax, dword [0x4cb4f4]
mov ecx, dword [0x4cb4f8]
push eax
push esi
call fcn.00443410
jmp 0x4288fc
mov esi, dword [0x4cb4f0]
mov edi, dword [esp + 0x10]
call fcn.00443b80
mov esi, edi
jmp 0x4288fc
mov eax, dword [0x4cb4f0]
mov edi, esi
call fcn.00455960
jmp 0x4288fc
mov ecx, dword [0x4cb4f0]
movzx eax, word [ecx]
neg eax
sbb eax, eax
push 7
and eax, ecx
push eax
push 0
call dword [0x4a23c4]
test eax, eax
setne cl
movzx edx, cl
push edx
push esi
call fcn.004305c0
jmp 0x4288fc
mov eax, dword [0x4cb4f4]
mov ecx, dword [0x4cb4f0]
push eax
push ecx
push esi
mov esi, dword [0x4cb4f8]
call fcn.00443bf0
mov esi, dword [esp + 0x10]
jmp 0x4288fc
mov edi, 2
mov ecx, esi
call fcn.00423740
mov ecx, dword [0x4cb4f0]
cmp eax, 1
sete dl
movzx eax, dl
mov edx, dword [0x4cb4f4]
push eax
call fcn.00443d30
mov esi, dword [esp + 0x10]
jmp 0x4288fc
push 0
push ecx
mov edi, 2
mov ecx, esi
call fcn.00423740
mov ecx, dword [0x4cb4f4]
mov edx, dword [0x4cb4f0]
add esp, 4
dec eax
neg eax
sbb eax, eax
inc eax
push eax
push ecx
push edx
call fcn.00455c40
add esp, 0x10
test al, al
sete al
movzx ecx, al
push ecx
push esi
call fcn.004305c0
jmp 0x4288fc
mov edx, dword [0x4cb4f8]
mov ax, word [edx]
call fcn.00409dd0
cmp ax, 0x52
jne 0x42a862
mov eax, dword [0x4cb4f4]
mov ecx, dword [0x4cb4f0]
push eax
push ecx
call dword [0x4a2140]
test eax, eax
sete dl
movzx eax, dl
push eax
push esi
call fcn.004305c0
jmp 0x4288fc
push 1
push ecx
mov edi, 2
mov ecx, esi
call fcn.00423740
mov ecx, dword [0x4cb4f4]
mov edx, dword [0x4cb4f0]
add esp, 4
push eax
push ecx
push edx
call fcn.00455c40
add esp, 0x10
test al, al
sete al
movzx ecx, al
push ecx
push esi
call fcn.004305c0
jmp 0x4288fc
mov edx, dword [0x4cb4f0]
push edx
call fcn.00442d90
add esp, 4
test al, al
sete al
mov byte [esp + 0x84], al
call dword [0x4a22b0]
mov edx, dword [esp + 0x84]
mov ecx, dword [0x4c7a54]
push edx
push esi
mov dword [ecx + 0x30], eax
call fcn.004305c0
jmp 0x4288fc
mov eax, dword [0x4cb4f0]
cmp word [eax], 0
je 0x42a91b
mov edi, 1
mov ecx, esi
call fcn.00423740
cmp eax, edi
mov eax, dword [0x4cb4f0]
sete cl
movzx edx, cl
push edx
call fcn.00455f10
add esp, 4
test al, al
je 0x42a91b
xor al, al
push eax
push esi
call fcn.004305c0
jmp 0x4288fc
mov eax, 1
push eax
push esi
call fcn.004305c0
jmp 0x4288fc
mov eax, dword [0x4cb4f4]
cmp word [eax], 0
jne 0x42a949
mov edi, dword [edi + 0x10]
lea eax, [edi + 0x250]
test edi, edi
jne 0x42a949
mov eax, 0x4a48a0
mov edi, esi
call fcn.00443d80
jmp 0x4288fc
mov ebx, dword [0x4cb4f4]
cmp word [ebx], 0
jne 0x42a973
mov edi, dword [edi + 0x10]
lea ebx, [edi + 0x250]
test edi, edi
jne 0x42a973
mov ebx, 0x4a48a0
mov edi, 3
mov ecx, esi
call fcn.00423740
mov esi, dword [0x4cb4f8]
cmp eax, 1
sete al
movzx ecx, al
push ecx
call fcn.00416940
mov edx, dword [esp + 0x14]
push eax
mov eax, dword [0x4cb4f0]
push ebx
push edx
call fcn.00443e90
mov esi, dword [esp + 0x10]
jmp 0x4288fc
mov eax, dword [0x4cb4f4]
cmp word [eax], 0
jne 0x42a9cb
mov edi, dword [edi + 0x10]
lea eax, [edi + 0x250]
test edi, edi
jne 0x42a9cb
mov eax, 0x4a48a0
mov ecx, dword [0x4cb4f8]
movzx edx, word [ecx]
push edx
mov edi, esi
call fcn.00444520
jmp 0x4288fc
mov ebx, dword [0x4cb4f4]
cmp word [ebx], 0
jne 0x42a9ff
mov edi, dword [edi + 0x10]
lea ebx, [edi + 0x250]
test edi, edi
jne 0x42a9ff
mov ebx, 0x4a48a0
mov edi, 4
mov ecx, esi
call fcn.00423740
mov esi, dword [0x4cb4fc]
cmp eax, 1
sete al
movzx ecx, al
push ecx
call fcn.00416940
mov edx, dword [0x4cb4f8]
mov edi, dword [esp + 0x14]
push eax
movzx eax, word [edx]
push eax
mov eax, dword [0x4cb4f0]
push ebx
call fcn.004446a0
mov esi, edi
jmp 0x4288fc
mov eax, dword [0x4cb4f4]
cmp word [eax], 0
je 0x42aa60
mov ecx, dword [0x4cb4f8]
push ecx
mov edi, eax
push esi
call fcn.00444860
jmp 0x4288fc
mov edi, dword [edi + 0x10]
test edi, edi
je 0x42aa7f
mov ecx, dword [0x4cb4f8]
push ecx
add edi, 0x250
push esi
call fcn.00444860
jmp 0x4288fc
mov ecx, dword [0x4cb4f8]
push ecx
mov edi, 0x4a48a0
push esi
call fcn.00444860
jmp 0x4288fc
mov eax, dword [0x4cb4f4]
cmp word [eax], 0
jne 0x42aab3
mov edi, dword [edi + 0x10]
lea eax, [edi + 0x250]
test edi, edi
jne 0x42aab3
mov eax, 0x4a48a0
push esi
call fcn.00455a70
jmp 0x4288fc
mov eax, dword [0x4cb4f0]
call fcn.004426f0
xor edx, edx
cmp dword [edi + 0x104], edx
sete dl
mov edi, edx
jmp 0x4288fe
mov eax, dword [0x4cb500]
mov ecx, dword [0x4cb4fc]
mov edx, dword [0x4cb4f4]
push eax
push ecx
mov ecx, dword [0x4cb4f8]
push edx
push esi
call fcn.004427b0
jmp 0x4288fc
mov eax, dword [0x4cb4f8]
mov ecx, dword [0x4cb4f4]
push eax
push ecx
mov ecx, dword [0x4cb4fc]
mov edx, esi
call fcn.00455070
jmp 0x4288fc
mov edx, dword [0x4cb4f0]
push edx
push esi
call fcn.00455380
jmp 0x4288fc
mov eax, dword [0x4cb510]
mov ecx, dword [0x4cb508]
mov edx, dword [0x4cb504]
mov edi, dword [0x4cb50c]
push eax
mov eax, dword [0x4cb4fc]
push ecx
mov ecx, dword [0x4cb4f4]
push edx
mov edx, dword [0x4cb4f0]
push eax
push ecx
mov ecx, dword [0x4cb500]
push edx
mov edx, dword [0x4cb4f8]
push esi
call fcn.00455710
jmp 0x4288fc
push 0
mov ecx, 4
call fcn.0043cbb0
add esp, 4
jmp 0x4288fc
mov esi, dword [0x4cb4f0]
push 7
call fcn.00409ef0
add esp, 4
cmp eax, 7
jne 0x42abb4
push 0
lea ecx, [eax - 6]
call fcn.0043cbb0
mov esi, dword [esp + 0x14]
add esp, 4
jmp 0x4288fc
cmp byte [edi + 0xf9], 0
je 0x42abe0
mov ecx, dword [0x4cbe34]
test ecx, ecx
jle 0x42abca
dec ecx
jmp 0x42abcf
mov ecx, 0x18f
mov dword [0x4cbe34], ecx
mov dword [ecx*4 + 0x4cbe38], 0
mov esi, dword [esp + 0x10]
cmp eax, 1
sete al
mov byte [edi + 0xf9], al
mov edi, 1
jmp 0x428906
push 0
mov ecx, 2
call fcn.0043cbb0
add esp, 4
jmp 0x4288fc
push 0
mov ecx, 3
call fcn.0043cbb0
add esp, 4
jmp 0x4288fc
mov ebx, dword [0x4c7a54]
add ebx, 0x4c
call fcn.0045e5f0
test eax, eax
je 0x42ac42
mov ecx, dword [0x4c7a54]
mov edx, dword [ecx + 0x4c]
mov ebx, dword [edx + 4]
jmp 0x42ac44
xor ebx, ebx
mov al, byte [esi + 1]
test al, al
jne 0x42ac62
fldz
sub esp, 8
fstp qword [esp]
push ebx
push 0
push 0x10000
push 0x4ac0c8
jmp 0x42aca9
cmp al, 1
jne 0x42ac7e
fldz
mov eax, dword [0x4cb4f0]
sub esp, 8
fstp qword [esp]
push ebx
push 0
push 0x10000
push eax
jmp 0x42aca9
mov edi, 3
mov ecx, esi
call fcn.004237f0
mov ecx, dword [0x4cb4f4]
sub esp, 8
fstp qword [esp]
push ebx
push ecx
xor edi, edi
mov ecx, esi
call fcn.00423740
mov edx, dword [0x4cb4f8]
push eax
push edx
call fcn.0047c1a0
mov edi, eax
add esp, 0x18
test edi, edi
jne 0x42acdc
call dword [0x4a22b0]
cmp eax, 0x59e
jne 0x42acdc
mov eax, dword [0x4cb4f0]
push eax
push edi
push 0x4a7ad4
mov ecx, esi
call fcn.00430920
jmp 0x4288fc
xor ecx, ecx
test edi, edi
setne cl
mov edi, ecx
jmp 0x4288fe
mov edx, dword [0x4cb50c]
cmp word [edx], 0
je 0x42ad08
mov edi, 7
mov ecx, esi
call fcn.00423740
mov dword [esp + 0x3c], eax
jmp 0x42ad10
mov dword [esp + 0x3c], 0x80000000
mov eax, dword [0x4cb508]
cmp word [eax], 0
je 0x42ad2d
mov edi, 6
mov ecx, esi
call fcn.00423740
mov dword [esp + 0x1c], eax
jmp 0x42ad35
mov dword [esp + 0x1c], 0x80000000
mov ecx, dword [0x4cb504]
cmp word [ecx], 0
je 0x42ad53
mov edi, 5
mov ecx, esi
call fcn.00423740
mov dword [esp + 0x44], eax
jmp 0x42ad5b
mov dword [esp + 0x44], 0x80000000
mov edx, dword [0x4cb500]
cmp word [edx], 0
je 0x42ad79
mov edi, 4
mov ecx, esi
call fcn.00423740
mov dword [esp + 0x28], eax
jmp 0x42ad81
mov dword [esp + 0x28], 0x80000000
mov edi, 9
mov ecx, esi
call fcn.004237f0
mov eax, dword [0x4cb518]
mov ecx, dword [0x4cb510]
sub esp, 8
fstp qword [esp]
push eax
mov ax, word [ecx]
call fcn.00409dd0
mov ecx, dword [esp + 0x48]
cmp ax, 0x4c
sete dl
movzx eax, dl
mov edx, dword [esp + 0x28]
push eax
mov eax, dword [esp + 0x54]
push ecx
mov ecx, dword [0x4cb4fc]
push edx
push eax
mov ax, word [ecx]
call fcn.00409dd0
mov edx, dword [0x4cb4f8]
mov edi, dword [esp + 0x44]
cmp ax, 0x48
mov eax, dword [0x4cb4f4]
push edx
push eax
sete cl
push ebx
call fcn.0043ce80
add esp, 0x28
jmp 0x4288fc
mov ecx, dword [0x4cb4f4]
cmp word [ecx], 0
je 0x42ae11
mov edi, 1
mov ecx, esi
call fcn.00423740
mov ebx, eax
jmp 0x42ae13
xor ebx, ebx
mov edx, dword [0x4cb4f0]
cmp word [edx], 0
je 0x42ae2a
xor edi, edi
mov ecx, esi
call fcn.00423740
jmp 0x42ae2f
mov eax, 0xc8
mov ecx, dword [0x4cb4fc]
mov edx, dword [0x4cb4f8]
push ecx
push edx
push ebx
push eax
call fcn.004536d0
jmp 0x4288fc
mov eax, dword [0x4cb560]
test eax, eax
je 0x42ae69
push eax
call dword [0x4a25a0]
test eax, eax
je 0x42ae69
mov eax, dword [0x4cb560]
push eax
call dword [0x4a269c]
mov dword [0x4cb560], 0
mov edi, 1
jmp 0x428906
mov ecx, dword [0x4cb500]
mov edx, dword [0x4cb4fc]
mov eax, dword [0x4cb4f8]
push 0
push ecx
mov ecx, dword [0x4cb4f4]
push edx
mov edx, dword [0x4cb4f0]
push eax
push ecx
push edx
push esi
mov ecx, 0x4a48a0
call fcn.00433050
jmp 0x4288fc
mov eax, dword [0x4cb504]
mov ecx, dword [0x4cb500]
mov edx, dword [0x4cb4fc]
push 1
push eax
mov eax, dword [0x4cb4f8]
push ecx
mov ecx, dword [0x4cb4f4]
push edx
push eax
push ecx
mov ecx, dword [0x4cb4f0]
push esi
call fcn.00433050
jmp 0x4288fc
mov edx, dword [0x4cb4f8]
mov eax, dword [0x4cb4f4]
mov ecx, dword [0x4cb4f0]
push edx
push eax
push ecx
mov ecx, dword [0x4cb4fc]
push esi
call fcn.004342b0
jmp 0x4288fc
mov edx, dword [0x4cb4f4]
mov eax, dword [0x4cb4f0]
mov edi, dword [0x4cb4fc]
mov esi, dword [0x4cb4f8]
push edx
push eax
call fcn.00434670
mov esi, dword [esp + 0x10]
jmp 0x4288fc
mov ecx, esi
call fcn.004359a0
jmp 0x4288fc
mov esi, dword [0x4cb4f4]
call fcn.00416bd0
mov esi, dword [0x4cb4f0]
movzx ebx, ax
call fcn.00416c40
movzx ecx, ax
cmp ecx, 0xffffffff
je 0x42af82
cmp ebx, 0xffffffff
je 0x42af82
mov eax, 3
shl ax, cl
shl bx, cl
not ax
and ax, word [edi + 0xf0]
or ax, bx
mov word [edi + 0xf0], ax
mov esi, dword [esp + 0x10]
mov edi, 1
jmp 0x428906
xor edi, edi
mov ecx, esi
call fcn.00423740
mov ecx, dword [esp + 0x14]
mov byte [ecx + 0xef], al
cmp al, 0x64
jbe case.0x42b375.69
mov byte [ecx + 0xef], 2
mov edi, 1
jmp 0x428906
mov ecx, dword [edi + 0xd4]
mov eax, dword [0x4cb4f0]
push ecx
call fcn.004168b0
mov dword [edi + 0xd4], eax
add esp, 4
mov edi, 1
jmp 0x428906
xor edi, edi
mov ecx, esi
call fcn.00423740
cmp eax, 0x64
ja case.0x42b375.69
mov edx, dword [esp + 0x14]
mov byte [edx + 0xf6], al
mov edi, 1
jmp 0x428906
mov eax, dword [0x4cb4f8]
push 0x4a9300
push eax
call fcn.00490e99
add esp, 8
test eax, eax
jne 0x42b05f
mov ecx, dword [0x4cb4f0]
cmp word [ecx], ax
je 0x42b038
xor edi, edi
mov ecx, esi
call fcn.00423740
mov edx, dword [esp + 0x14]
mov dword [edx + 0x60], eax
mov eax, dword [0x4cb4f4]
cmp word [eax], 0
je case.0x42b375.69
mov edi, 1
mov ecx, esi
call fcn.00423740
mov ecx, dword [esp + 0x14]
mov dword [ecx + 0x68], eax
jmp 0x428906
mov edx, dword [0x4cb4f0]
cmp word [edx], 0
je 0x42b07b
xor edi, edi
mov ecx, esi
call fcn.00423740
mov ecx, dword [esp + 0x14]
mov dword [ecx + 0x5c], eax
mov edx, dword [0x4cb4f4]
cmp word [edx], 0
je case.0x42b375.69
mov edi, 1
mov ecx, esi
call fcn.00423740
mov ecx, dword [esp + 0x14]
mov dword [ecx + 0x64], eax
jmp 0x428906
mov edx, dword [0x4cb4f4]
push 0x4a9300
push edx
call fcn.00490e99
add esp, 8
xor edi, edi
mov ecx, esi
test eax, eax
jne 0x42b0d5
call fcn.00423740
mov ecx, dword [esp + 0x14]
mov dword [ecx + 0x70], eax
mov edi, 1
jmp 0x428906
call fcn.00423740
mov edx, dword [esp + 0x14]
mov dword [edx + 0x6c], eax
mov edi, 1
jmp 0x428906
xor edi, edi
mov ecx, esi
call fcn.00423740
mov ecx, dword [esp + 0x14]
mov dword [ecx + 0x54], eax
mov edi, 1
jmp 0x428906
xor edi, edi
mov ecx, esi
call fcn.00423740
mov edx, dword [esp + 0x14]
mov dword [edx + 0x58], eax
mov edi, 1
jmp 0x428906
mov ecx, dword [0x4cb4f0]
mov eax, 0x4ac0f4
call fcn.00477670
mov ecx, esi
test eax, eax
je 0x42b15a
mov dword [edi], 0xffffffff
mov dword [edi + 4], 0xffffffff
xor edi, edi
call fcn.00423740
mov ecx, dword [esp + 0x14]
mov dword [ecx + 0x24], eax
mov edi, 1
jmp 0x428906
mov dword [edi + 0x24], 0xffffffff
xor edi, edi
call fcn.00423740
mov ecx, dword [esp + 0x14]
mov dword [ecx + 4], edx
mov edx, eax
or edx, dword [ecx + 4]
mov dword [ecx], eax
jne case.0x42b375.69
mov dword [ecx + 4], edi
mov dword [ecx], 0xa
lea edi, [edx + 1]
jmp 0x428906
mov esi, dword [0x4cb4f0]
push 7
call fcn.00409ef0
add esp, 4
cmp eax, 7
je 0x42b1ae
cmp eax, 1
sete al
mov byte [edi + 0xf3], al
mov esi, dword [esp + 0x10]
mov edi, 1
jmp 0x428906
mov esi, dword [0x4cb4f0]
call fcn.004163b0
dec eax
cmp eax, 5
ja case.default.0x42b1d1
jmp dword [eax*4 + 0x42c310]
mov esi, dword [esp + 0x10]
mov dword [edi + 0x20], 1
mov edi, 1
jmp 0x428906
mov esi, dword [esp + 0x10]
mov dword [edi + 0x20], 2
mov edi, 1
jmp 0x428906
mov esi, dword [esp + 0x10]
mov dword [edi + 0x20], 4
mov edi, 1
jmp 0x428906
mov esi, dword [esp + 0x10]
mov dword [edi + 0x20], 3
mov edi, 1
jmp 0x428906
mov esi, dword [esp + 0x10]
mov byte [edi + 0xe9], 1
mov edi, 1
jmp 0x428906
mov esi, dword [esp + 0x10]
mov byte [edi + 0xe9], 0
mov edi, 1
jmp 0x428906
mov edx, dword [0x4cb4f0]
push 5
push 0x4a9440
push edx
call fcn.0049109d
add esp, 0xc
test eax, eax
jne 0x42b33c
lea edi, [eax + 1]
mov ecx, esi
call fcn.004236b0
cmp eax, 0x1e
jae 0x428906
mov ecx, esi
call fcn.00423740
mov edi, eax
mov eax, dword [0x4cb4f4]
push 0x2e
push eax
mov ebx, edx
call fcn.00491a11
add esp, 8
mov dword [esp + 0x3c], eax
test eax, eax
je 0x42b2ba
mov esi, eax
add esi, 2
call fcn.00415420
mov esi, dword [esp + 0x10]
jmp 0x42b2be
xor eax, eax
xor edx, edx
add edi, eax
adc ebx, edx
add edi, 2
adc ebx, 0
mov dword [esp + 0x34], ebx
js 0x42b2e0
jg case.0x42b375.69
cmp edi, 0xff
ja case.0x42b375.69
mov eax, dword [0x4cb4f4]
push 0
push 1
push 1
push 1
call fcn.00477120
add esp, 0x10
mov ecx, 0x4ac0fc
test eax, eax
jne 0x42b303
mov ecx, 0x4a48a0
cmp dword [esp + 0x3c], 0
mov eax, 0x4a48a0
jne 0x42b314
mov eax, 0x4aaec0
mov edx, dword [esp + 0x14]
push ecx
mov ecx, dword [0x4cb4f4]
push eax
push ecx
add edx, 0x74
push 0x4ac100
push edx
call fcn.00491426
add esp, 0x14
mov edi, 1
jmp 0x428906
mov eax, dword [0x4cb4f0]
push 7
push 0x4a9430
push eax
call fcn.0049109d
add esp, 0xc
test eax, eax
jne case.0x42b375.69
mov ecx, dword [0x4cb4f4]
movzx eax, word [ecx]
add eax, 0xffffffbc
cmp eax, 0x24
ja case.0x42b375.69
movzx edx, byte [eax + 0x42c334]
jmp dword [edx*4 + 0x42c328]
mov byte [edi + 0xf5], 0x44
mov edi, 1
jmp 0x428906
mov al, byte [ecx]
mov byte [edi + 0xf5], al
mov edi, 1
jmp 0x428906
mov ecx, dword [0x4cb4f8]
push ecx
mov ecx, dword [0x4cb4f4]
call fcn.0043de10
jmp 0x4288fc
movzx eax, byte [esi + 1]
mov dl, 4
cmp dl, al
sbb ecx, ecx
and ecx, dword [0x4cb4a8]
mov dl, 3
push ecx
mov ecx, dword [0x4cb504]
cmp dl, al
mov edx, dword [0x4cb500]
sbb eax, eax
and eax, dword [0x4cb4a4]
push eax
mov eax, dword [0x4cb4fc]
push ecx
mov ecx, dword [0x4cb4f8]
push edx
mov edx, dword [0x4cb4f0]
push eax
push ecx
mov ecx, dword [0x4cb4f4]
push edx
push 0x4cc518
call fcn.0046cbd0
jmp 0x4288fc
mov eax, dword [0x4cb4fc]
mov ecx, dword [0x4cb4f8]
mov edx, dword [0x4cb4f4]
push eax
push ecx
mov ecx, dword [0x4cb4f0]
push edx
push 0x4cc518
call fcn.0045e660
jmp 0x4288fc
mov edx, dword [0x4cb4f4]
mov al, 2
cmp al, byte [esi + 1]
mov eax, dword [0x4cb4f0]
sbb ecx, ecx
and ecx, dword [0x4cb4a0]
push ecx
push edx
push eax
mov eax, dword [0x4cb4f8]
push esi
call fcn.0045efc0
jmp 0x4288fc
mov ecx, dword [0x4cb4fc]
mov edx, dword [0x4cb4f8]
mov eax, dword [0x4cb4f4]
push ecx
push edx
push eax
push esi
call fcn.0045ff90
jmp 0x4288fc
mov eax, dword [0x4cb4f0]
mov edi, eax
call fcn.00409fb0
test eax, eax
jne 0x42b4a8
push 0x4a92ac
push edi
call fcn.00490e99
add esp, 8
neg eax
sbb eax, eax
and eax, 0xfffffffa
add eax, 6
jmp switch.0x0042b4b1
cmp eax, 7
ja case.0x42b375.69
jmp dword [eax*4 + 0x42c35c]
cmp byte [0x4cb6ba], 0
jne case.0x42b375.69
call fcn.00430270
mov edi, 1
jmp 0x428906
cmp byte [0x4cb6ba], 0
je case.0x42b375.69
call fcn.00430270
mov edi, 1
jmp 0x428906
mov ecx, dword [0x4cb4f0]
push ecx
push 0
push 0x4a7ad4
mov ecx, esi
call fcn.00430920
jmp 0x4288fc
mov edi, 1
mov ecx, esi
call fcn.00423740
test eax, eax
setne dl
movzx eax, dl
push eax
mov eax, dword [0x4cb4f0]
call fcn.00409fb0
push eax
push esi
call fcn.004302c0
jmp 0x4288fc
mov esi, dword [0x4cb4f0]
push 7
call fcn.00409ef0
add esp, 4
cmp eax, 7
je 0x42b556
cmp eax, 1
sete cl
mov byte [edi + 0xf4], cl
mov esi, dword [esp + 0x10]
mov edi, 1
jmp 0x428906
mov esi, dword [0x4cb4f0]
call fcn.00416740
mov byte [edi + 0xf2], al
cmp al, 4
jne 0x42b580
mov byte [edi + 0xf2], 0
mov esi, dword [esp + 0x10]
mov edi, 1
jmp 0x428906
mov esi, dword [0x4cb4f0]
push 7
call fcn.00409ef0
add esp, 4
cmp eax, 7
je 0x42b5af
cmp eax, 1
sete dl
mov byte [edi + 0xea], dl
mov esi, dword [esp + 0x10]
mov edi, 1
jmp 0x428906
mov esi, dword [0x4cb4f0]
push 7
call fcn.00409ef0
add esp, 4
cmp eax, 7
je 0x42b5de
cmp eax, 1
sete al
mov byte [edi + 0xeb], al
mov esi, dword [esp + 0x10]
mov edi, 1
jmp 0x428906
mov eax, dword [0x4cb4f0]
call fcn.00416800
lea ecx, [eax - 1]
cmp ecx, 0xc
ja case.0x42b375.69
movzx ecx, byte [ecx + 0x42c394]
jmp dword [ecx*4 + 0x42c37c]
push 1
call dword [0x4a2670]
mov byte [0x4cbd6e], 1
mov edi, 1
jmp 0x428906
push 0
call dword [0x4a2670]
mov byte [0x4cbd6e], 0
mov edi, 1
jmp 0x428906
mov dword [0x4c7a64], eax
mov edi, 1
jmp 0x428906
or byte [0x4cbda0], 2
cmp dword [0x4cb68c], 0
mov byte [0x4cbd6f], 1
jne case.0x42b375.69
mov edx, dword [0x4c8b90]
movzx eax, word [edx]
push eax
call fcn.00408580
add esp, 4
mov edi, 1
jmp 0x428906
mov byte [0x4cbd6f], 0
mov edi, 1
jmp 0x428906
mov eax, dword [0x4cb4f0]
mov edi, 0x4c7a58
mov cl, 0x90
call fcn.00444a20
jmp 0x4288fc
mov eax, dword [0x4cb4f0]
mov edi, 0x4c7a5c
mov cl, 0x14
call fcn.00444a20
jmp 0x4288fc
mov eax, dword [0x4cb4f0]
mov edi, 0x4c7a60
mov cl, 0x91
call fcn.00444a20
jmp 0x4288fc
mov al, 1
mov edx, 0x4cc518
call fcn.004181a0
mov edi, 1
jmp 0x428906
xor edi, edi
mov ecx, esi
call fcn.00423740
push 1
push eax
call fcn.00401430
add esp, 8
mov edi, 1
jmp 0x428906
mov ecx, dword [0x4cb4f4]
mov ebx, dword [0x4cb4fc]
mov edx, dword [0x4cb4f8]
push ecx
mov ecx, dword [0x4cb500]
call fcn.004738e0
jmp 0x4288fc
mov edx, dword [0x4cb4f0]
mov ecx, dword [0x4cb4fc]
mov ebx, dword [0x4cb4f8]
push edx
mov edx, dword [0x4cb4f4]
push esi
call fcn.00473b20
jmp 0x4288fc
cmp byte [esi + 1], 3
mov ecx, dword [0x4cb4f4]
mov edx, dword [0x4cb4f0]
sbb eax, eax
not eax
and eax, dword [0x4cb4f8]
push eax
push ecx
push esi
call fcn.00473c70
jmp 0x4288fc
mov eax, 2
cmp byte [esi + 1], al
jae 0x42b7a7
mov edi, dword [edi + 0x14]
test edi, edi
je 0x42b7a7
lea edx, [edi + 0x808]
push edx
lea eax, [edi + 8]
push eax
mov eax, dword [edi + 4]
push esi
call fcn.00473cf0
jmp 0x4288fc
lea ecx, [esp + 0x2f]
push ecx
mov ecx, dword [0x4cb4f4]
lea edx, [esp + 0x50]
push edx
push ecx
call fcn.004160b0
mov ebx, eax
mov eax, dword [esp + 0x58]
add esp, 0xc
test eax, eax
jne 0x42b7db
mov eax, dword [0x4cb4f8]
mov ecx, dword [0x4cb4fc]
mov dword [esp + 0x4c], eax
jmp 0x42b7e1
mov ecx, dword [0x4cb4f8]
push ecx
push eax
push esi
mov eax, ebx
call fcn.00473cf0
cmp byte [esp + 0x2f], 0
mov edi, eax
je 0x4288fe
test ebx, ebx
je 0x4288fe
push ebx
call dword [0x4a2040]
jmp 0x4288fe
mov eax, 2
cmp byte [esi + 1], al
jae 0x42b843
mov edi, dword [edi + 0x14]
test edi, edi
je 0x42b843
mov edx, dword [0x4cb4f0]
push edx
lea eax, [edi + 0x808]
push eax
mov eax, dword [edi + 4]
lea ecx, [edi + 8]
push ecx
mov ecx, dword [edi + 0x1008]
push esi
call fcn.00474090
jmp 0x4288fc
lea edx, [esp + 0x2f]
push edx
mov edx, dword [0x4cb4f4]
lea ecx, [esp + 0x50]
push ecx
push edx
call fcn.004160b0
mov ebx, eax
mov eax, dword [esp + 0x58]
add esp, 0xc
test eax, eax
jne 0x42b87d
mov eax, dword [0x4cb4f8]
mov ecx, dword [0x4cb4fc]
mov edx, dword [0x4cb500]
mov dword [esp + 0x4c], eax
jmp 0x42b889
mov ecx, dword [0x4cb4f8]
mov edx, dword [0x4cb4fc]
mov esi, dword [0x4cb4f0]
push edx
push ecx
push eax
call fcn.00416280
mov ecx, eax
mov eax, dword [esp + 0x1c]
push eax
mov eax, ebx
call fcn.00474090
cmp byte [esp + 0x2f], 0
mov edi, eax
je 0x42b8b9
test ebx, ebx
je 0x42b8b9
push ebx
call dword [0x4a2040]
mov esi, dword [esp + 0x10]
jmp 0x4288fe
cmp byte [esi + 1], 1
jae 0x42b936
mov eax, dword [edi + 0x14]
test eax, eax
je 0x42b936
cmp dword [eax + 0x1008], 0xfffffffe
lea ecx, [eax + 8]
jne 0x42b919
cmp word [ecx], 0
je 0x42b90f
add eax, 0x808
push eax
push ecx
push 0x4ac114
mov esi, 0x400
lea edi, [esp + 0x14c]
call fcn.004772c0
mov esi, dword [esp + 0x1c]
add esp, 0xc
mov ecx, edi
mov edi, dword [esp + 0x14]
xor eax, eax
jmp 0x42b91e
lea ecx, [eax + 0x808]
xor eax, eax
jmp 0x42b91e
add eax, 0x808
mov edx, dword [edi + 0x14]
mov ebx, dword [edx + 4]
push eax
push esi
mov edi, ecx
mov dword [esp + 0x54], ecx
call fcn.004744a0
jmp 0x4288fc
mov edx, dword [0x4cb4f0]
lea eax, [esp + 0x2f]
push eax
lea ecx, [esp + 0x50]
push ecx
push edx
mov eax, 2
call fcn.004160b0
add esp, 0xc
cmp dword [esp + 0x4c], 0
mov ebx, eax
jne 0x42b96e
mov eax, dword [0x4cb4f4]
mov edi, dword [0x4cb4f8]
mov dword [esp + 0x4c], eax
jmp 0x42b974
mov edi, dword [0x4cb4f4]
cmp word [edi], 0
jne 0x42b97e
xor edi, edi
jmp 0x42b995
push 0x4ac120
push edi
call fcn.00490e99
add esp, 8
test eax, eax
jne 0x42b995
mov edi, 0x4a48a0
push edi
mov edi, dword [esp + 0x50]
push esi
call fcn.004744a0
cmp byte [esp + 0x2f], 0
mov edi, eax
je 0x4288fe
test ebx, ebx
je 0x4288fe
push ebx
call dword [0x4a2040]
jmp 0x4288fe
mov esi, dword [0x4cb4f0]
call fcn.00416300
mov esi, eax
cmp esi, 0xffffffff
jne 0x42b9f3
mov ecx, dword [0x4cb4f0]
push ecx
mov ecx, dword [esp + 0x14]
push 0
push 0x4a7ad4
call fcn.00430920
mov esi, dword [esp + 0x10]
jmp 0x4288fc
call fcn.004788d0
test eax, eax
je 0x42ba02
mov dword [edi + 0xd0], esi
mov esi, dword [esp + 0x10]
mov edi, 1
jmp 0x428906
mov edx, dword [0x4cb4f0]
push edx
call dword [0x4a2144]
mov edi, 1
jmp 0x428906
xor edi, edi
mov ecx, esi
call fcn.00423740
push eax
call fcn.00456570
xor ecx, ecx
add esp, 4
test al, al
setne cl
mov edi, ecx
jmp 0x4288fe
mov eax, dword [0x4cb4f0]
call fcn.00416e00
cmp eax, 0xffffffff
jne 0x42ba70
mov edx, dword [0x4cb4f0]
push edx
push 0
push 0x4a7ad4
mov ecx, esi
call fcn.00430920
jmp 0x4288fc
mov dword [edi + 0xfc], eax
mov edi, 1
jmp 0x428906
xor edi, edi
mov eax, edi
mov ecx, dword [esp + 0x974]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov edx, dword [esp + 0x40]
mov dword [edx], eax
mov eax, edi
mov ecx, dword [esp + 0x974]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov eax, dword [eax + 8]
mov ecx, dword [esp + 0x40]
mov dword [ecx], eax
jmp case.0x427804.116
test ebx, ebx
je 0x42bb28
cmp dword [ebx + 8], 0
jne 0x42bb28
mov ecx, dword [0x4cb498]
test ecx, ecx
je 0x42bb19
cmp byte [ecx + 0x17], 0
jne 0x42bae7
mov eax, dword [ecx + 0xc]
jmp 0x42bae9
mov eax, ecx
test byte [eax + 0x15], 2
je 0x42bb19
mov eax, ebx
call fcn.004157c0
mov eax, dword [ebp + 8]
dec eax
neg eax
sbb eax, eax
and eax, 6
inc eax
mov ecx, dword [esp + 0x974]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov dword [ebx + 8], 0
mov edx, dword [0x4cb4f0]
mov dword [ebx], edx
mov eax, dword [ebp + 8]
dec eax
neg eax
sbb eax, eax
and eax, 6
inc eax
mov ecx, dword [esp + 0x974]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov esi, dword [esi + 0x18]
test esi, esi
je 0x42bb5d
mov eax, dword [esp + 0x40]
mov dword [eax], esi
jmp case.0x427804.116
mov eax, 5
mov ecx, dword [esp + 0x974]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov esi, dword [esi + 0x18]
test esi, esi
je 0x42bb86
mov ecx, dword [esp + 0x40]
mov dword [ecx], esi
mov eax, 6
mov ecx, dword [esp + 0x974]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov edx, dword [0x4cb4f4]
mov ecx, dword [esp + 0x10]
push edx
push 0
push 0x4a7b00
call fcn.00430920
mov ecx, dword [esp + 0x974]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov eax, dword [0x4cb4f8]
push eax
push 0
push 0x4a7b2c
mov ecx, esi
call fcn.00430920
mov ecx, dword [esp + 0x974]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov ecx, dword [esp + 0x40]
mov dword [ecx], eax
jmp 0x42baa1
cmp dword [esp + 0x1c], 0
je 0x42bc1a
lea esi, [esp + 0x1c]
call fcn.00431100
mov eax, dword [esp + 0x3c]
test eax, eax
je 0x4277d5
cmp eax, 8
je 0x4277d5
mov ecx, dword [0x4ccb4c]
push 0x4a48a0
push 0
push 0x4aba28
call fcn.00430920
mov ecx, dword [esp + 0x974]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov eax, dword [esp + 0x40]
mov dword [eax], edx
jmp case.0x427804.116
mov ecx, dword [esp + 0x40]
mov dword [ecx], edx
mov eax, edi
mov ecx, dword [esp + 0x974]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
cmp byte [esi + 1], 0
jne 0x42bcb3
push 0x4a48a0
push 0
push 0x4abf44
mov ecx, esi
call fcn.00430520
mov ecx, dword [esp + 0x974]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
push 0x10
call fcn.00492048
mov edi, eax
xor eax, eax
add esp, 4
cmp edi, eax
jne 0x42bcee
push 0x4a48a0
push eax
push 0x4a76d0
mov ecx, esi
call fcn.00430920
mov ecx, dword [esp + 0x974]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov edx, dword [0x4cc47c]
mov ecx, dword [0x4cc480]
push eax
mov dword [esp + 0x40], edx
lea edx, [esp + 0x40]
push edx
push eax
push esi
lea ebx, [esp + 0x2c]
mov esi, edi
mov dword [esp + 0x2c], ecx
mov dword [0x4cc47c], eax
mov dword [0x4cc480], eax
call fcn.0045cba0
mov ebx, dword [esp + 0x3c]
mov esi, eax
cmp esi, 1
jne 0x42bd49
cmp dword [edi + 8], 0
jne 0x42bd49
cmp dword [edi], ebx
jne 0x42bd49
cmp dword [esp + 0x1c], 0x400000
mov dword [edi + 0xc], ebx
jbe 0x42bdae
dec dword [0x4cc484]
jmp 0x42bdae
test ebx, ebx
je 0x42bd80
mov eax, dword [0x4cc47c]
test eax, eax
je 0x42bd71
push eax
call fcn.00491536
add esp, 4
cmp dword [0x4cc480], 0x400000
jbe 0x42bd71
dec dword [0x4cc484]
mov eax, dword [esp + 0x1c]
mov dword [0x4cc47c], ebx
mov dword [0x4cc480], eax
cmp esi, 1
je 0x42bda7
push edi
call fcn.0049152b
add esp, 4
mov eax, esi
mov ecx, dword [esp + 0x974]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov dword [edi + 0xc], 0
mov eax, dword [esp + 0x48]
test byte [eax + 0x100], 2
mov dword [eax + 0x104], edi
jne 0x42bdce
mov ecx, dword [esp + 0x10]
push ecx
call fcn.00430de0
add esp, 4
xor eax, eax
mov ecx, dword [esp + 0x974]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov edx, dword [0x4c8b90]
cmp word [edx], 0
jne 0x42be17
cmp dword [0x4cbdd0], 0
jne 0x42be17
cmp dword [0x4cb688], 0
jne 0x42be17
cmp dword [0x4cb68c], 0
jne 0x42be17
cmp byte [0x4cb696], 0
je case.0x427804.224
mov eax, 8
mov ecx, dword [esp + 0x974]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
xor edi, edi
mov ecx, esi
call fcn.00423740
push eax
push 6
push 0x4cc518
call fcn.004181d0
mov ecx, dword [esp + 0x974]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
cmp dword [ebp + 8], 2
je case.0x427804.116
push 0x4a48a0
push 0
push 0x4abf78
mov ecx, esi
call fcn.00430920
mov ecx, dword [esp + 0x974]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret 0xc