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

Disassembly:
jmp 0x46b700
sub esp, 0xc90
mov eax, dword [0x7ce4f0]
xor eax, esp
mov dword [esp + 0xc8c], eax
push ebx
push ebp
push esi
mov esi, dword [esp + 0xca0]
xor ebx, ebx
push edi
mov edi, dword [esp + 0xca8]
push 0xff
lea eax, [esp + 0x9a1]
push ebx
push eax
mov dword [esp + 0x40], ecx
xor ebp, ebp
mov dword [esp + 0x38], ebx
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x174], ebx
mov dword [esp + 0x178], ebx
mov dword [esp + 0x17c], ebx
mov dword [esp + 0x180], ebx
mov byte [esp + 0x9a8], bl
call fcn.00637530
push 0xff
lea ecx, [esp + 0x8ad]
push ebp
push ecx
mov byte [esp + 0x8b4], bl
call fcn.00637530
push 0xff
lea edx, [esp + 0x5b9]
push ebp
push edx
mov byte [esp + 0x5c0], bl
call fcn.00637530
push 0xff
lea eax, [esp + 0x6c5]
push ebp
push eax
mov byte [esp + 0x6cc], bl
call fcn.00637530
push 0xff
lea ecx, [esp + 0xad1]
push ebp
push ecx
mov byte [esp + 0xad8], bl
call fcn.00637530
mov eax, 1
add esp, 0x3c
lea ecx, [esp + 0x18c]
mov word [esp + 0x38], bx
mov byte [esp + 0x3a], bl
mov dword [esp + 0x20], eax
mov dword [esp + 0x48], eax
mov dword [esp + 0xfc], ebx
call fcn.0040a0d3
lea ecx, [esp + 0x2dc]
call fcn.0040a0d3
lea ecx, [esp + 0x27c]
call fcn.0040a0d3
lea ecx, [esp + 0x2bc]
call fcn.0040a0d3
lea ecx, [esp + 0x29c]
call fcn.0040a0d3
lea ecx, [esp + 0x23c]
call fcn.0040a0d3
lea ecx, [esp + 0x2fc]
call fcn.0040a0d3
lea ecx, [esp + 0x25c]
call fcn.0040a0d3
lea ecx, [esp + 0x39c]
call fcn.0040a0d3
lea ecx, [esp + 0x33c]
call fcn.0040a0d3
lea ecx, [esp + 0x3bc]
call fcn.0040a0d3
lea ecx, [esp + 0x3dc]
call fcn.0040a0d3
lea ecx, [esp + 0x3fc]
call fcn.0040a0d3
lea ecx, [esp + 0x41c]
call fcn.0040a0d3
lea ecx, [esp + 0x31c]
call fcn.0040a0d3
lea ecx, [esp + 0x37c]
call fcn.0040a0d3
lea ecx, [esp + 0x35c]
call fcn.0040a0d3
lea ecx, [esp + 0x1dc]
call fcn.0040a0d3
lea ecx, [esp + 0x1fc]
call fcn.0040a0d3
lea ecx, [esp + 0x43c]
call fcn.0040a0d3
lea edx, [esp + 0x45c]
mov dword [esp + 0x7c], edx
mov dword [esp + 0x98], 9
lea ebx, [ebx]
mov ecx, dword [esp + 0x7c]
call fcn.0040a0d3
add dword [esp + 0x7c], 0x20
dec dword [esp + 0x98]
jns 0x46b900
fld dword [0x677b24]
xor eax, eax
push 0xff
fstp dword [esp + 0x160]
push eax
mov dword [esp + 0xf4], eax
mov dword [esp + 0x130], eax
mov dword [esp + 0x16c], eax
mov dword [esp + 0xbc], eax
mov dword [esp + 0xb8], eax
mov dword [esp + 0x110], eax
mov word [esp + 0x68], ax
mov byte [esp + 0x6a], al
mov word [esp + 0x6c], ax
mov byte [esp + 0x6e], al
mov word [esp + 0x48], ax
mov byte [esp + 0x4a], al
mov word [esp + 0x70], ax
mov byte [esp + 0x72], al
mov byte [esp + 0xba4], al
lea eax, [esp + 0xba5]
push eax
call fcn.00637530
fldz
add esp, 0xc
fst dword [esp + 0xd8]
xor eax, eax
fst dword [esp + 0xd0]
mov ecx, 1
fst dword [esp + 0x88]
mov word [esp + 0x4c], bx
mov byte [esp + 0x4e], bl
mov word [esp + 0x54], bx
mov byte [esp + 0x56], bl
mov word [esp + 0x70], bx
mov byte [esp + 0x72], bl
mov byte [esp + 0x1c], 0xff
mov dword [esp + 0x17c], eax
mov dword [esp + 0x180], eax
mov dword [esp + 0x184], eax
mov dword [esp + 0x188], eax
mov dword [esp + 0x1ac], eax
mov dword [esp + 0x1b0], eax
mov dword [esp + 0x1b4], eax
mov dword [esp + 0x1b8], eax
mov dword [esp + 0x1cc], eax
mov dword [esp + 0x1d0], eax
mov dword [esp + 0x1d4], eax
mov dword [esp + 0x1d8], eax
mov byte [esp + 0x45], al
mov byte [esp + 0x6f], al
mov byte [esp + 0xe8], al
mov dword [esp + 0x84], eax
mov dword [esp + 0x80], eax
mov dword [esp + 0x8c], eax
mov dword [esp + 0x160], eax
mov dword [esp + 0x138], 0x64
mov dword [esp + 0xf8], 0xa
mov dword [esp + 0x120], ecx
mov dword [esp + 0x7c], eax
mov dword [esp + 0xe4], eax
mov dword [esp + 0x98], 0xf
mov byte [esp + 0x77], al
mov byte [esp + 0x46], al
mov dword [esp + 0xf0], eax
mov dword [esp + 0xf4], eax
mov dword [esp + 0x10c], eax
mov dword [esp + 0x110], eax
mov dword [esp + 0x114], eax
mov dword [esp + 0x118], eax
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], eax
mov dword [esp + 0x144], ecx
mov dword [esp + 0x14c], eax
mov dword [esp + 0xb8], eax
mov dword [esp + 0xbc], eax
mov dword [esp + 0xd4], eax
mov dword [esp + 0x104], eax
mov dword [esp + 0x9c], 5
mov dword [esp + 0xa0], 6
mov dword [esp + 0x100], eax
fld1
mov byte [esp + 0x5e], cl
fst dword [esp + 0x154]
mov byte [esp + 0x5f], cl
fst dword [esp + 0x158]
mov dword [esp + 0x130], ecx
fst dword [esp + 0x90]
lea ecx, [esp + 0x89c]
fst dword [esp + 0x94]
or edx, 0xffffffff
fst dword [esp + 0x12c]
push ecx
fstp dword [esp + 0x140]
mov ecx, edi
mov dword [esp + 0xc4], eax
mov dword [esp + 0x144], 0x14
fst dword [esp + 0xe4]
mov dword [esp + 0xcc], edx
fst dword [esp + 0xd0]
mov dword [esp + 0x14c], eax
fstp dword [esp + 0x138]
mov dword [esp + 0x120], 0x100
mov dword [esp + 0x7c], 0x81
mov dword [esp + 0x154], eax
mov dword [esp + 0xe0], edx
mov dword [esp + 0x128], eax
mov dword [esp + 0xb0], eax
mov dword [esp + 0xa8], eax
mov word [esp + 0x40], 0xa0a
mov byte [esp + 0x42], 0xa
mov dword [esp + 0xac], eax
call fcn.0040c220
cmp byte [esp + 0x89c], 0x7d
je 0x46ccd2
jmp 0x46bbe0
mov ecx, edi
call fcn.00401ee2
test eax, eax
jne 0x46ccd2
mov al, byte [esp + 0x89c]
cmp al, 0x7b
je case.0x46bc56.167
cmp al, 0x24
jne 0x46bc1a
mov ecx, dword [esp + 0x34]
push edi
lea edx, [esp + 0x8a0]
push edx
push esi
call fcn.0040e2b9
jmp case.0x46bc56.167
cmp al, 0x40
jne 0x46bc37
push 0x100
lea eax, [esp + 0x8a0]
push eax
mov ecx, edi
call fcn.0040332d
jmp case.0x46bc56.167
lea ecx, [esp + 0x89c]
push ecx
mov ecx, dword [esp + 0x38]
call fcn.0040d166
add eax, 0xffffff5a
cmp eax, 0x6d
ja case.0x46bc56.167
jmp dword [eax*4 + 0x46fd80]
mov ecx, edi
call fcn.00405ce0
mov ebp, eax
mov ecx, edi
mov dword [esp + 0x24], ebp
call fcn.00405ce0
mov ebx, eax
mov ecx, edi
mov dword [esp + 0x28], ebx
call fcn.00405ce0
mov ecx, edi
mov dword [esp + 0x2c], eax
call fcn.00405ce0
fild dword [esp + 0x24]
mov dword [esp + 0x30], eax
fstp dword [esp + 0x58]
fld dword [esp + 0x58]
fst dword [esi + 0x1c4]
fild dword [esp + 0x28]
fstp dword [esp + 0x58]
fld dword [esp + 0x58]
fst dword [esi + 0x1c8]
fstp dword [esi + 0x1d0]
fstp dword [esi + 0x1cc]
jmp case.0x46bc56.167
lea edx, [esp + 0x59c]
push edx
mov ecx, edi
call fcn.0040c220
jmp case.0x46bc56.167
lea eax, [esp + 0x69c]
push eax
mov ecx, edi
call fcn.0040c220
jmp case.0x46bc56.167
mov ecx, edi
call fcn.00406947
movzx ecx, ax
mov dword [esp + 0x100], ecx
jmp case.0x46bc56.167
mov ecx, edi
call fcn.0040934f
mov dword [esp + 0x104], eax
jmp case.0x46bc56.167
mov ecx, dword [esp + 0x34]
lea edx, [esp + 0x29c]
push edx
push edi
call fcn.0040dbe8
jmp case.0x46bc56.167
mov ecx, edi
call fcn.0040c789
mov ecx, dword [esp + 0x34]
push eax
call fcn.0040c2c0
lea edx, [esp + 0x99c]
sub edx, eax
mov cl, byte [eax]
mov byte [edx + eax], cl
inc eax
test cl, cl
jne 0x46bd44
jmp case.0x46bc56.167
mov ecx, edi
call fcn.0040760d
mov ecx, edi
mov byte [esp + 0x38], al
call fcn.0040760d
mov ecx, edi
mov byte [esp + 0x39], al
call fcn.0040760d
mov byte [esp + 0x3a], al
jmp case.0x46bc56.167
mov ecx, edi
call fcn.00405ce0
mov ecx, edi
mov dword [esp + 0x9c], eax
call fcn.00405ce0
mov dword [esp + 0xa0], eax
jmp case.0x46bc56.167
mov ecx, edi
call fcn.0040934f
mov dword [esp + 0x20], eax
jmp case.0x46bc56.167
mov ecx, edi
call fcn.0040934f
mov dword [esp + 0x48], eax
jmp case.0x46bc56.167
mov ecx, dword [esp + 0x34]
lea eax, [esp + 0x18c]
push eax
push edi
call fcn.0040dbe8
jmp case.0x46bc56.167
lea ecx, [esp + 0x2dc]
push ecx
mov ecx, dword [esp + 0x38]
push edi
call fcn.0040dbe8
jmp case.0x46bc56.167
mov ecx, dword [esp + 0x34]
lea edx, [esp + 0x27c]
push edx
push edi
call fcn.0040dbe8
jmp case.0x46bc56.167
mov ecx, dword [esp + 0x34]
lea eax, [esp + 0x3fc]
push eax
push edi
call fcn.0040dbe8
jmp case.0x46bc56.167
lea ecx, [esp + 0x2bc]
push ecx
mov ecx, dword [esp + 0x38]
push edi
call fcn.0040dbe8
jmp case.0x46bc56.167
mov ecx, dword [esp + 0x34]
lea edx, [esp + 0x3dc]
push edx
push edi
call fcn.0040dbe8
jmp case.0x46bc56.167
mov ecx, edi
call fcn.0040c789
mov ecx, dword [esp + 0x34]
push eax
call fcn.0040c2c0
lea edx, [esp + 0xb9c]
sub edx, eax
mov edi, edi
mov cl, byte [eax]
mov byte [edx + eax], cl
inc eax
test cl, cl
jne 0x46be60
mov ecx, edi
call fcn.0040760d
mov ecx, edi
mov byte [esp + 0x4c], al
call fcn.0040760d
mov ecx, edi
mov byte [esp + 0x4d], al
call fcn.0040760d
mov ecx, edi
mov byte [esp + 0x4e], al
call fcn.0040760d
mov ecx, edi
mov byte [esp + 0x54], al
call fcn.0040760d
mov ecx, edi
mov byte [esp + 0x55], al
call fcn.0040760d
mov ecx, edi
mov byte [esp + 0x56], al
call fcn.0040760d
mov ecx, edi
mov byte [esp + 0x70], al
call fcn.0040760d
mov ecx, edi
mov byte [esp + 0x71], al
call fcn.0040760d
mov byte [esp + 0x72], al
jmp case.0x46bc56.167
mov ecx, edi
call fcn.0040760d
mov ecx, edi
mov byte [esp + 0x5e], al
call fcn.0040760d
mov byte [esp + 0x5f], al
jmp case.0x46bc56.167
mov ecx, edi
call fcn.00410807
mov ecx, edi
mov dword [esp + 0x1cc], eax
call fcn.00410807
mov ecx, edi
mov dword [esp + 0x1d0], eax
call fcn.00410807
mov ecx, edi
mov dword [esp + 0x1d4], eax
call fcn.00410807
mov dword [esp + 0x1d8], eax
jmp case.0x46bc56.167
mov ecx, edi
call fcn.0040760d
mov byte [esp + 0x1c], al
jmp case.0x46bc56.167
mov ecx, edi
call fcn.00406947
movzx eax, ax
mov ecx, edi
mov dword [esp + 0xb4], eax
call fcn.00406947
movzx ecx, ax
mov dword [esp + 0xb0], ecx
jmp case.0x46bc56.167
mov ecx, edi
call fcn.00406947
movzx edx, ax
mov ecx, edi
mov dword [esp + 0xb4], edx
call fcn.00406947
movzx eax, ax
mov dword [esp + 0xb0], eax
jmp case.0x46bc56.167
mov ecx, edi
call fcn.0040934f
mov dword [esp + 0x108], eax
jmp case.0x46bc56.167
mov ecx, edi
call fcn.0040760d
mov ecx, edi
mov byte [esp + 0x60], al
call fcn.0040760d
mov ecx, edi
mov byte [esp + 0x61], al
call fcn.0040760d
mov ecx, edi
mov byte [esp + 0x62], al
call fcn.0040760d
mov ecx, edi
mov byte [esp + 0x64], al
call fcn.0040760d
mov ecx, edi
mov byte [esp + 0x65], al
call fcn.0040760d
mov byte [esp + 0x66], al
jmp case.0x46bc56.167
mov ecx, edi
call fcn.00405ce0
mov ecx, edi
call fcn.00405ce0
jmp case.0x46bc56.167
mov ecx, edi
call fcn.0040c789
mov ecx, dword [esp + 0x34]
push eax
call fcn.0040c2c0
lea edx, [esp + 0xa9c]
sub edx, eax
nop
mov cl, byte [eax]
mov byte [edx + eax], cl
inc eax
test cl, cl
jne 0x46c010
jmp case.0x46bc56.167
mov ecx, edi
call fcn.0040c789
mov dword [esp + 0xdc], eax
jmp case.0x46bc56.167
mov ecx, edi
call fcn.0040934f
mov dword [esp + 0xa8], eax
jmp case.0x46bc56.167
mov ecx, edi
call fcn.0040760d
mov ecx, edi
mov byte [esp + 0x3c], al
call fcn.0040760d
mov ecx, edi
mov byte [esp + 0x3d], al
call fcn.0040760d
mov byte [esp + 0x3e], al
jmp case.0x46bc56.167
mov ecx, edi
call fcn.00410807
mov ecx, edi
mov dword [esp + 0xac], eax
call fcn.00410807
mov dword [esp + 0xa4], eax
jmp case.0x46bc56.167
mov ecx, edi
call fcn.0040c789
mov ecx, dword [esp + 0x34]
push eax
call fcn.0040c2c0
lea edx, [esp + 0xa9c]
sub edx, eax
mov cl, byte [eax]
mov byte [edx + eax], cl
inc eax
test cl, cl
jne 0x46c0a6
mov ecx, edi
call fcn.0040760d
mov ecx, edi
mov byte [esp + 0x40], al
call fcn.0040760d
mov ecx, edi
mov byte [esp + 0x41], al
call fcn.0040760d
mov byte [esp + 0x42], al
jmp case.0x46bc56.167
mov ecx, edi
call fcn.00410807
mov ecx, edi
mov dword [esp + 0x1ac], eax
call fcn.00410807
mov ecx, edi
mov dword [esp + 0x1b0], eax
call fcn.00410807
mov ecx, edi
mov dword [esp + 0x1b4], eax
call fcn.00410807
mov dword [esp + 0x1b8], eax
jmp case.0x46bc56.167
mov ecx, edi
call fcn.0040934f
mov dword [esp + 0xfc], eax
jmp case.0x46bc56.167
mov ecx, edi
call fcn.00405ce0
mov ecx, edi
mov dword [esp + 0x14], eax
call fcn.00405ce0
mov dword [esp + 0x18], eax
jmp case.0x46bc56.167
mov ecx, edi
call fcn.00410807
mov ecx, edi
mov dword [esp + 0x17c], eax
call fcn.00410807
mov ecx, edi
mov dword [esp + 0x180], eax
call fcn.00410807
mov ecx, edi
mov dword [esp + 0x184], eax
call fcn.00410807
mov dword [esp + 0x188], eax
jmp case.0x46bc56.167
mov ecx, edi
call fcn.0040760d
movzx edx, al
push edx
mov ecx, esi
call fcn.0040ee26
jmp case.0x46bc56.167
xor eax, eax
mov ecx, edi
mov dword [esp + 0x1bc], eax
mov dword [esp + 0x1c0], eax
mov dword [esp + 0x1c4], eax
mov dword [esp + 0x1c8], eax
call fcn.00410807
mov ecx, edi
mov dword [esp + 0x1bc], eax
call fcn.00410807
mov ecx, edi
mov dword [esp + 0x1c0], eax
call fcn.00410807
mov ecx, edi
mov dword [esp + 0x1c4], eax
call fcn.00410807
mov dword [esp + 0x1c8], eax
lea eax, [esp + 0x1bc]
push eax
mov ecx, esi
call fcn.00403332
jmp case.0x46bc56.167
mov ecx, edi
call fcn.00406947
movzx ecx, ax
mov dword [esp + 0x148], ecx
jmp case.0x46bc56.167
xor eax, eax
mov ecx, edi
mov dword [esp + 0x21c], eax
mov dword [esp + 0x220], eax
mov dword [esp + 0x224], eax
mov dword [esp + 0x228], eax
call fcn.00410807
mov ecx, edi
mov dword [esp + 0x21c], eax
call fcn.00410807
mov ecx, edi
mov dword [esp + 0x220], eax
call fcn.00410807
mov ecx, edi
mov dword [esp + 0x224], eax
call fcn.00410807
lea edx, [esp + 0x21c]
push edx
mov ecx, esi
mov dword [esp + 0x22c], eax
call fcn.0040e3c2
jmp case.0x46bc56.167
mov ecx, edi
call fcn.00410807
mov dword [esp + 0x140], eax
jmp case.0x46bc56.167
mov ecx, edi
call fcn.0040c789
mov dword [esp + 0x11c], eax
jmp case.0x46bc56.167
mov ecx, edi
call fcn.0040c789
mov dword [esp + 0x78], eax
test eax, eax
jne 0x46c2c1
mov dword [esp + 0x78], 1
jmp case.0x46bc56.167
mov eax, dword [esp + 0x78]
cmp eax, 1
jne 0x46c2d7
mov dword [esp + 0x78], 2
jmp case.0x46bc56.167
cmp eax, 2
jne case.0x46bc56.167
mov dword [esp + 0x78], 4
jmp case.0x46bc56.167
mov ecx, edi
call fcn.0040760d
movzx eax, al
mov dword [esp + 0x130], eax
jmp case.0x46bc56.167
mov ecx, edi
call fcn.0040760d
movzx ecx, al
mov dword [esp + 0x150], ecx
jmp case.0x46bc56.167
mov ecx, edi
call fcn.0040760d
mov byte [esp + 0x178], al
mov edx, dword [esp + 0x178]
push edx
mov ecx, esi
call fcn.00404700
jmp case.0x46bc56.167
mov ecx, dword [esp + 0x34]
lea eax, [esp + 0x1dc]
push eax
push edi
call fcn.0040dbe8
jmp case.0x46bc56.167
lea ecx, [esp + 0x1fc]
push ecx
mov ecx, dword [esp + 0x38]
push edi
call fcn.0040dbe8
jmp case.0x46bc56.167
mov ecx, edi
call fcn.0040760d
mov byte [esp + 0x45], al
jmp case.0x46bc56.167
mov ecx, edi
call fcn.0040760d
mov byte [esp + 0x6f], al
jmp case.0x46bc56.167
mov ecx, edi
call fcn.0040760d
mov byte [esp + 0xe8], al
jmp case.0x46bc56.167
mov ecx, dword [esp + 0x34]
lea edx, [esp + 0x23c]
push edx
push edi
call fcn.0040dbe8
mov ecx, edi
call fcn.00406947
movzx eax, ax
mov dword [esp + 0x84], eax
jmp case.0x46bc56.167
mov ecx, edi
call fcn.00406947
movzx ecx, ax
mov dword [esp + 0x84], ecx
jmp case.0x46bc56.167
mov ecx, edi
call fcn.00406947
movzx edx, ax
mov dword [esp + 0x8c], edx
jmp case.0x46bc56.167
mov ecx, dword [esp + 0x34]
lea eax, [esp + 0x2fc]
push eax
push edi
call fcn.0040dbe8
mov ecx, edi
call fcn.00406947
movzx ecx, ax
mov dword [esp + 0x80], ecx
jmp case.0x46bc56.167
mov ecx, edi
call fcn.00406947
movzx edx, ax
mov dword [esp + 0x80], edx
jmp case.0x46bc56.167
mov ecx, dword [esp + 0x34]
lea eax, [esp + 0x25c]
push eax
push edi
call fcn.0040dbe8
mov ecx, edi
call fcn.00406947
movzx ecx, ax
mov dword [esp + 0x8c], ecx
jmp case.0x46bc56.167
mov ecx, edi
call fcn.0040760d
mov ecx, edi
mov byte [esp + 0x68], al
call fcn.0040760d
mov ecx, edi
mov byte [esp + 0x69], al
call fcn.0040760d
mov byte [esp + 0x6a], al
jmp case.0x46bc56.167
mov ecx, edi
call fcn.00406947
movzx edx, ax
mov dword [esp + 0xd4], edx
jmp case.0x46bc56.167
mov ecx, edi
call fcn.0040934f
mov dword [esp + 0xc0], eax
jmp case.0x46bc56.167
mov ecx, edi
call fcn.0040c789
push 0xfe
mov dword [esp + 0x5c], eax
lea eax, [esp + 0x7a1]
push 0
push eax
mov byte [esp + 0x7a8], 0
call fcn.00637530
mov ecx, dword [esp + 0x64]
add esp, 0xc
push ecx
mov ecx, dword [esp + 0x38]
call fcn.0040c2c0
lea edx, [esp + 0x79c]
sub edx, eax
mov cl, byte [eax]
mov byte [edx + eax], cl
inc eax
test cl, cl
jne 0x46c4e6
mov ecx, edi
call fcn.0040760d
mov ecx, edi
mov byte [esp + 0x50], al
call fcn.0040760d
mov ecx, edi
mov byte [esp + 0x51], al
call fcn.0040760d
mov byte [esp + 0x52], al
movzx eax, word [esi + 0xc]
sub eax, 7
je 0x46c5c0
sub eax, 4
je 0x46c55c
dec eax
jne case.0x46bc56.167
push pe_nt_image_headers32
call fcn.006375e6
lea ecx, [esp + 0x7a0]
lea edx, [eax + 4]
mov dword [esp + 0x5c], eax
mov eax, ecx
add esp, 4
sub edx, eax
lea esp, [esp]
mov al, byte [ecx]
mov byte [ecx + edx], al
inc ecx
test al, al
jne 0x46c550
jmp 0x46c58a
push pe_nt_image_headers32
call fcn.006375e6
lea ecx, [esp + 0x7a0]
lea edx, [eax + 4]
mov dword [esp + 0x5c], eax
mov eax, ecx
add esp, 4
sub edx, eax
jmp 0x46c580
mov al, byte [ecx]
mov byte [ecx + edx], al
inc ecx
test al, al
jne 0x46c580
movzx ecx, byte [esp + 0x50]
movzx edx, byte [esp + 0x51]
movzx eax, byte [esp + 0x52]
shl ecx, 8
or ecx, edx
shl ecx, 8
or ecx, eax
mov eax, dword [esp + 0x58]
mov dword [eax], ecx
mov edx, dword [esi + 0x1f8]
lea ecx, [esi + 0x1f8]
push eax
mov eax, dword [edx + 8]
call eax
jmp case.0x46bc56.167
movzx eax, byte [esp + 0x50]
movzx ecx, byte [esp + 0x51]
mov edx, dword [esi]
mov edx, dword [edx + 0x6c]
shl eax, 8
or eax, ecx
movzx ecx, byte [esp + 0x52]
push 0
push 0
shl eax, 8
or eax, ecx
push 0xffffffffffffffff
push eax
lea eax, [esp + 0x7ac]
push eax
mov ecx, esi
call edx
jmp case.0x46bc56.167
mov ecx, edi
call fcn.00406947
movzx eax, ax
mov ecx, edi
mov dword [esp + 0x58], eax
call fcn.00406947
lea ecx, [esp + 0x23c]
push ecx
mov ecx, dword [esp + 0x38]
push edi
mov word [esi + 0x1fc], ax
call fcn.0040dbe8
mov ecx, edi
call fcn.00406947
mov ecx, dword [esp + 0x34]
movzx edx, ax
lea eax, [esp + 0x2fc]
push eax
push edi
mov dword [esp + 0x8c], edx
call fcn.0040dbe8
mov ecx, edi
call fcn.00406947
movzx ecx, ax
lea edx, [esp + 0x25c]
push edx
mov dword [esp + 0x84], ecx
mov ecx, dword [esp + 0x38]
push edi
call fcn.0040dbe8
mov ecx, edi
call fcn.00406947
lea ecx, [esp + 0x27c]
movzx eax, ax
push ecx
mov ecx, dword [esp + 0x38]
push edi
mov dword [esp + 0x94], eax
call fcn.0040dbe8
mov ecx, dword [esp + 0x8c]
mov edx, dword [esi]
mov edx, dword [edx + 0x44]
lea eax, [esp + 0x27c]
push eax
push ecx
mov ecx, dword [esp + 0x88]
lea eax, [esp + 0x264]
push eax
push ecx
mov ecx, dword [esp + 0x94]
lea eax, [esp + 0x30c]
push eax
push ecx
mov ecx, dword [esp + 0x70]
lea eax, [esp + 0x254]
push eax
push ecx
mov ecx, esi
call edx
jmp case.0x46bc56.167
mov ecx, edi
call fcn.0040c789
push eax
lea ecx, [esi + 0x1f8]
call fcn.00406f5f
jmp case.0x46bc56.167
mov ecx, dword [esp + 0x34]
lea eax, [esp + 0x39c]
push eax
push edi
call fcn.0040dbe8
jmp case.0x46bc56.167
lea ecx, [esp + 0x33c]
push ecx
mov ecx, dword [esp + 0x38]
push edi
call fcn.0040dbe8
jmp case.0x46bc56.167
mov ecx, edi
call fcn.00406947
movzx edx, ax
mov dword [esp + 0x128], edx
jmp case.0x46bc56.167
mov ecx, edi
call fcn.00406947
movzx eax, ax
mov dword [esp + 0x164], eax
jmp case.0x46bc56.167
mov ecx, edi
call fcn.0040c789
mov ecx, edi
mov dword [esp + 0xc4], eax
call fcn.0040c789
push 0xfe
lea ecx, [esp + 0x7a1]
push 0
push ecx
mov dword [esp + 0x64], eax
mov byte [esp + 0x7a8], 0
call fcn.00637530
mov edx, dword [esp + 0x64]
mov ecx, dword [esp + 0x40]
add esp, 0xc
push edx
call fcn.0040c2c0
lea edx, [esp + 0x79c]
sub edx, eax
lea esp, [esp]
mov cl, byte [eax]
mov byte [eax + edx], cl
inc eax
test cl, cl
jne 0x46c7a0
mov ecx, edi
call fcn.0040c789
mov ecx, dword [esp + 0xc4]
push 0xff00
push eax
lea eax, [esp + 0x7a4]
push eax
push ecx
lea ecx, [esi + 0x1f8]
call fcn.00402bf3
jmp case.0x46bc56.167
mov ecx, edi
call fcn.0040c789
mov ecx, edi
mov dword [esp + 0x10], eax
call fcn.0040c789
mov ecx, edi
mov dword [esp + 0x58], eax
call fcn.0040c789
push 0xfe
lea edx, [esp + 0x7a1]
push 0
push edx
mov dword [esp + 0xd0], eax
mov byte [esp + 0x7a8], 0
call fcn.00637530
mov eax, dword [esp + 0xd0]
mov ecx, dword [esp + 0x40]
add esp, 0xc
push eax
call fcn.0040c2c0
lea edx, [esp + 0x79c]
sub edx, eax
mov cl, byte [eax]
mov byte [eax + edx], cl
inc eax
test cl, cl
jne 0x46c834
mov edx, dword [esp + 0x58]
mov eax, dword [esp + 0x10]
push 0
lea ecx, [esp + 0x7a0]
push ecx
push edx
push eax
lea ecx, [esi + 0x1f8]
call fcn.00402716
jmp case.0x46bc56.167
mov ecx, edi
call fcn.00410807
mov ecx, edi
mov dword [esp + 0x160], eax
call fcn.00410807
mov dword [esp + 0x138], eax
jmp case.0x46bc56.167
mov ecx, edi
call fcn.00410807
mov dword [esp + 0xf8], eax
jmp case.0x46bc56.167
mov ecx, edi
call fcn.0040934f
mov dword [esp + 0x120], eax
jmp case.0x46bc56.167
mov ecx, edi
call fcn.0040c789
mov dword [esp + 0x7c], eax
jmp case.0x46bc56.167
mov ecx, edi
call fcn.00405ce0
mov ecx, edi
mov dword [esp + 0x168], eax
call fcn.00405ce0
mov ecx, edi
mov dword [esp + 0x16c], eax
call fcn.00405ce0
mov ecx, edi
mov dword [esp + 0x170], eax
call fcn.00405ce0
mov dword [esp + 0x174], eax
jmp case.0x46bc56.167
lea ecx, [esp + 0x3bc]
push ecx
mov ecx, dword [esp + 0x38]
push edi
call fcn.0040dbe8
jmp case.0x46bc56.167
mov ecx, edi
call fcn.00406947
movzx edx, ax
mov dword [esp + 0xe4], edx
jmp case.0x46bc56.167
mov ecx, edi
call fcn.00410807
mov dword [esp + 0x98], eax
jmp case.0x46bc56.167
mov ecx, edi
call fcn.0040c789
mov dword [esp + 0xc8], eax
jmp case.0x46bc56.167
mov ecx, edi
call fcn.0040760d
mov ecx, edi
mov byte [esp + 0x77], al
call fcn.0040760d
mov byte [esp + 0x46], al
jmp case.0x46bc56.167
mov ecx, edi
call fcn.00405ce0
mov ecx, edi
mov dword [esp + 0x10c], eax
call fcn.00405ce0
mov ecx, edi
mov dword [esp + 0x110], eax
call fcn.00405ce0
mov ecx, edi
mov dword [esp + 0x114], eax
call fcn.00405ce0
mov ecx, edi
mov dword [esp + 0x118], eax
call fcn.00406947
movzx eax, ax
mov ecx, edi
mov dword [esp + 0xf0], eax
call fcn.00406947
movzx ecx, ax
mov dword [esp + 0xf4], ecx
jmp case.0x46bc56.167
mov ecx, edi
call fcn.00410807
mov ecx, edi
mov dword [esp + 0x7c], eax
call fcn.0040934f
mov edx, dword [esi]
mov edx, dword [edx + 0x40]
push eax
mov eax, dword [esp + 0x80]
push eax
mov ecx, esi
call edx
jmp case.0x46bc56.167
mov ecx, edi
call fcn.00406947
movzx eax, ax
push eax
mov ecx, esi
call fcn.0040362a
jmp case.0x46bc56.167
mov ecx, edi
call fcn.0040934f
mov dword [esp + 0x144], eax
jmp case.0x46bc56.167
mov ecx, edi
call fcn.00406947
movzx ecx, ax
mov dword [esp + 0x14c], ecx
jmp case.0x46bc56.167
mov ecx, dword [esp + 0x34]
lea edx, [esp + 0x41c]
push edx
push edi
call fcn.0040dbe8
mov ecx, edi
call fcn.00406947
movzx eax, ax
push eax
lea eax, [esp + 0x420]
push eax
mov ecx, esi
call fcn.004071d5
jmp case.0x46bc56.167
lea ecx, [esp + 0x31c]
push ecx
mov ecx, dword [esp + 0x38]
push edi
call fcn.0040dbe8
jmp case.0x46bc56.167
mov ecx, edi
call fcn.00404651
fstp dword [esp + 0xd8]
jmp case.0x46bc56.167
mov ecx, edi
call fcn.00404651
fstp dword [esp + 0xd0]
jmp case.0x46bc56.167
mov ecx, edi
call fcn.00404651
fstp dword [esp + 0x88]
jmp case.0x46bc56.167
mov ecx, edi
call fcn.00404651
fstp dword [esp + 0x88]
mov ecx, edi
call fcn.00405ce0
mov dword [esp + 0x124], eax
jmp case.0x46bc56.167
mov ecx, edi
call fcn.00410807
mov ecx, edi
mov dword [esp + 0xb8], eax
call fcn.00410807
mov dword [esp + 0xbc], eax
jmp case.0x46bc56.167
mov ecx, dword [esp + 0x34]
lea edx, [esp + 0x35c]
push edx
push edi
call fcn.0040dbe8
jmp case.0x46bc56.167
mov ecx, dword [esp + 0x34]
lea eax, [esp + 0x37c]
push eax
push edi
call fcn.0040dbe8
jmp case.0x46bc56.167
mov ecx, edi
call fcn.0040934f
mov dword [esp + 0xec], eax
jmp case.0x46bc56.167
mov ecx, edi
call fcn.00404651
fstp dword [esp + 0x154]
mov ecx, edi
call fcn.00404651
fstp dword [esp + 0x158]
jmp case.0x46bc56.167
mov ecx, edi
call fcn.00404651
fstp dword [esp + 0x90]
mov ecx, edi
call fcn.00404651
fstp dword [esp + 0x94]
jmp case.0x46bc56.167
mov ecx, edi
call fcn.00404651
fstp dword [esp + 0xe0]
jmp case.0x46bc56.167
mov ecx, edi
call fcn.00404651
fstp dword [esp + 0xcc]
jmp case.0x46bc56.167
lea ecx, [esp + 0x43c]
push ecx
mov ecx, dword [esp + 0x38]
push edi
call fcn.0040dbe8
jmp case.0x46bc56.167
mov ecx, edi
call fcn.00404651
fstp dword [esp + 0x134]
jmp case.0x46bc56.167
mov ecx, edi
call fcn.00404651
fstp dword [esp + 0x12c]
jmp case.0x46bc56.167
mov ecx, edi
call fcn.00404651
fstp dword [esp + 0x13c]
jmp case.0x46bc56.167
mov ecx, dword [esp + 0x34]
lea edx, [esp + 0x45c]
push edx
push edi
call fcn.0040dbe8
mov ecx, dword [esp + 0x34]
lea eax, [esp + 0x47c]
push eax
push edi
call fcn.0040dbe8
lea ecx, [esp + 0x49c]
push ecx
mov ecx, dword [esp + 0x38]
push edi
call fcn.0040dbe8
jmp case.0x46bc56.167
mov ecx, dword [esp + 0x34]
lea edx, [esp + 0x4bc]
push edx
push edi
call fcn.0040dbe8
mov ecx, dword [esp + 0x34]
lea eax, [esp + 0x4dc]
push eax
push edi
call fcn.0040dbe8
lea ecx, [esp + 0x4fc]
push ecx
mov ecx, dword [esp + 0x38]
push edi
call fcn.0040dbe8
jmp case.0x46bc56.167
mov ecx, dword [esp + 0x34]
lea edx, [esp + 0x51c]
push edx
push edi
call fcn.0040dbe8
mov ecx, dword [esp + 0x34]
lea eax, [esp + 0x53c]
push eax
push edi
call fcn.0040dbe8
lea ecx, [esp + 0x55c]
push ecx
mov ecx, dword [esp + 0x38]
push edi
call fcn.0040dbe8
jmp case.0x46bc56.167
mov ecx, dword [esp + 0x34]
lea edx, [esp + 0x57c]
push edx
push edi
call fcn.0040dbe8
jmp case.0x46bc56.167
mov ecx, edi
call fcn.00404651
fstp dword [esp + 0x15c]
lea eax, [esp + 0x89c]
push eax
mov ecx, edi
call fcn.0040c220
cmp byte [esp + 0x89c], 0x7d
jne 0x46bbe0
mov edx, dword [esi]
mov eax, dword [esp + 0x104]
mov edx, dword [edx + 0x28]
push eax
mov ecx, esi
call edx
mov ax, word [esp + 0x100]
mov edi, dword [sym.imp.USER32.dll_CopyRect]
lea ecx, [esp + 0x1cc]
push ecx
lea edx, [esi + 0x1d4]
push edx
mov word [esi + 0x1c], ax
call edi
fld dword [esp + 0x154]
mov ecx, dword [esp + 0x48]
fstp dword [esi + 0x1f0]
mov eax, dword [esi]
fld dword [esp + 0x158]
mov edx, dword [eax + 4]
fstp dword [esi + 0x1f4]
push ecx
mov ecx, esi
call edx
movzx eax, word [esi + 0xc]
cmp eax, 0x100
jg 0x46ee53
je 0x46ed0c
sub eax, 2
cmp eax, 0x77
ja case.0x46f608.2066
movzx eax, byte [eax + 0x470048]
jmp dword [eax*4 + 0x46ff38]
mov edi, dword [esi]
lea ecx, [esp + 0x69c]
push ecx
call fcn.004052ef
mov ecx, dword [esp + 0x30]
add esp, 4
push eax
mov eax, dword [esp + 0x34]
lea edx, [esp + 0x190]
push edx
mov edx, dword [edi + 0x10]
push eax
push ecx
push ebx
push ebp
mov ecx, esi
call edx
mov eax, dword [esp + 0xbc]
mov ecx, dword [esp + 0xb8]
push eax
push ecx
mov ecx, esi
call fcn.0040c7c0
fld dword [esp + 0xd8]
fnstcw word [esp + 0x46]
mov dword [esi + 0x234], 1
movzx eax, word [esp + 0x46]
or eax, 0xc00
mov dword [esp + 0x10], eax
fldcw word [esp + 0x10]
fistp dword [esp + 0x10]
mov dx, word [esp + 0x10]
mov word [esi + 0x22a], dx
fldcw word [esp + 0x46]
fld dword [esp + 0xd0]
fnstcw word [esp + 0x46]
movzx eax, word [esp + 0x46]
or eax, 0xc00
mov dword [esp + 0x10], eax
fldcw word [esp + 0x10]
fistp dword [esp + 0x10]
mov ax, word [esp + 0x10]
mov word [esi + 0x22c], ax
fldcw word [esp + 0x46]
fld dword [esp + 0x88]
call fcn.006380e0
push eax
mov ecx, esi
call fcn.004045a2
lea ecx, [esp + 0x31c]
push ecx
mov ecx, esi
call fcn.0040d4d6
jmp case.0x46f608.2066
mov edi, dword [esi]
lea edx, [esp + 0x69c]
push edx
call fcn.004052ef
mov ecx, dword [esp + 0x34]
mov edx, dword [esp + 0x30]
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [edi + 0x10]
push ecx
push edx
push ebx
push ebp
mov ecx, esi
call eax
fild dword [esp + 0xb8]
push ecx
mov ecx, esi
fstp dword [esi + 0x218]
fild dword [esp + 0xc0]
fstp dword [esi + 0x21c]
fld dword [esp + 0x8c]
fstp dword [esp]
call fcn.004019e2
lea ecx, [esp + 0x31c]
push ecx
mov ecx, esi
call fcn.0040ac59
fld dword [esp + 0xe0]
fstp dword [esi + 0x220]
fld dword [esp + 0xcc]
fstp dword [esi + 0x224]
jmp case.0x46f608.2066
mov edi, dword [esi]
lea edx, [esp + 0x69c]
push edx
call fcn.004052ef
mov ecx, dword [esp + 0x34]
mov edx, dword [esp + 0x30]
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [edi + 0x10]
push ecx
push edx
push ebx
push ebp
mov ecx, esi
call eax
fild dword [esp + 0xb8]
mov ecx, dword [esp + 0x124]
push ecx
fstp dword [esi + 0x218]
push ecx
fild dword [esp + 0xc4]
mov ecx, esi
fstp dword [esi + 0x21c]
fld dword [esp + 0x90]
fstp dword [esp]
call fcn.004101bd
lea edx, [esp + 0x31c]
push edx
mov ecx, esi
call fcn.0040ac59
fld dword [esp + 0xe0]
fstp dword [esi + 0x220]
lea eax, [esp + 0x43c]
fld dword [esp + 0xcc]
push eax
fstp dword [esi + 0x224]
mov ecx, esi
fld dword [esp + 0x130]
fstp dword [esi + 0x22c]
fld dword [esp + 0x138]
fstp dword [esi + 0x250]
call fcn.00408d69
fld dword [esp + 0x13c]
fstp dword [esi + 0x270]
jmp case.0x46f608.2066
mov edi, dword [esi]
lea ecx, [esp + 0x69c]
push ecx
call fcn.004052ef
mov ecx, dword [esp + 0x30]
add esp, 4
push eax
mov eax, dword [esp + 0x34]
lea edx, [esp + 0x190]
push edx
mov edx, dword [edi + 0x10]
push eax
push ecx
push ebx
push ebp
mov ecx, esi
call edx
fild dword [esp + 0x14]
mov eax, dword [esp + 0x144]
mov cx, word [esp + 0x14c]
mov edx, dword [esi]
fstp dword [esi + 0x1e4]
fild dword [esp + 0x18]
mov edx, dword [edx + 0x34]
mov dword [esi + 0x1f8], eax
mov eax, dword [esp + 0x1c]
mov word [esi + 0x200], cx
fstp dword [esi + 0x1e8]
push eax
mov ecx, esi
call edx
jmp case.0x46f608.2066
lea eax, [esp + 0x59c]
push eax
call fcn.00403bd9
mov edi, dword [esi]
add esp, 4
cmp eax, 0xffffffff
jne 0x46d03c
lea ecx, [esp + 0x69c]
push ecx
call fcn.004052ef
mov ecx, dword [esp + 0x30]
add esp, 4
push eax
mov eax, dword [esp + 0x34]
push 0
lea edx, [esp + 0x194]
push edx
mov edx, dword [edi + 0x44]
push eax
push ecx
push ebx
push ebp
mov ecx, esi
call edx
jmp 0x46d080
lea eax, [esp + 0x69c]
push eax
call fcn.004052ef
add esp, 4
push eax
lea ecx, [esp + 0x5a0]
push ecx
call fcn.00403bd9
mov edx, dword [eax*8 + 0x6ac1e8]
mov ecx, dword [esp + 0x38]
add esp, 4
push edx
mov edx, dword [esp + 0x34]
lea eax, [esp + 0x194]
push eax
mov eax, dword [edi + 0x44]
push ecx
push edx
push ebx
push ebp
mov ecx, esi
call eax
fild dword [esp + 0x14]
mov ecx, dword [esp + 0xb0]
mov edx, dword [esp + 0xb4]
push ecx
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x20]
mov ecx, esi
fstp dword [esi + 0x1e8]
call fcn.00405e7a
movzx eax, byte [esp + 0x60]
movzx ecx, byte [esp + 0x61]
movzx edx, byte [esp + 0x62]
shl eax, 8
or eax, ecx
movzx ecx, byte [esp + 0x65]
shl eax, 8
or eax, edx
movzx edx, byte [esp + 0x66]
mov dword [esi + 0x204], eax
movzx eax, byte [esp + 0x64]
shl eax, 8
or eax, ecx
mov ecx, dword [esp + 0x138]
shl eax, 8
or eax, edx
mov edx, dword [esp + 0xf8]
mov dword [esi + 0x200], eax
mov eax, dword [esp + 0x160]
mov dword [esi + 0x270], ecx
mov ecx, dword [esp + 0x1c]
mov dword [esi + 0x26c], eax
mov eax, dword [esi]
mov dword [esi + 0x268], edx
mov edx, dword [eax + 0x34]
push ecx
mov ecx, esi
call edx
jmp case.0x46f608.2066
mov edi, dword [esi]
lea eax, [esp + 0x69c]
push eax
call fcn.004052ef
mov edx, dword [esp + 0x34]
add esp, 4
push eax
mov eax, dword [esp + 0x30]
lea ecx, [esp + 0x190]
push ecx
push edx
mov edx, dword [edi + 0x10]
push eax
push ebx
push ebp
mov ecx, esi
call edx
fild dword [esp + 0x14]
mov ecx, dword [esp + 0xa0]
mov eax, dword [esp + 0x9c]
fstp dword [esi + 0x1e4]
lea edx, [esp + 0xa9c]
fild dword [esp + 0x18]
mov dword [esi + 0x1fc], ecx
push edx
mov ecx, esi
fstp dword [esi + 0x1e8]
mov dword [esi + 0x1f8], eax
call fcn.0040c88d
movzx ecx, byte [esp + 0x40]
movzx edx, byte [esp + 0x41]
mov eax, dword [esp + 0x78]
shl ecx, 8
or ecx, edx
mov edx, dword [esp + 0xa4]
mov dword [esi + 0x3dc], eax
movzx eax, byte [esp + 0x42]
shl ecx, 8
or ecx, eax
movzx eax, byte [esp + 0x3c]
mov dword [esi + 0x3c8], ecx
mov ecx, dword [esp + 0xac]
mov dword [esi + 0x3d0], ecx
movzx ecx, byte [esp + 0x3d]
mov dword [esi + 0x3d4], edx
movzx edx, byte [esp + 0x3e]
shl eax, 8
or eax, ecx
shl eax, 8
or eax, edx
movzx edx, byte [esp + 0x38]
mov dword [esi + 0x3d8], eax
mov eax, dword [esp + 0xa8]
or edx, 0xffffff00
mov dword [esi + 0x3cc], eax
movzx eax, byte [esp + 0x39]
push 0x33517d
shl edx, 8
lea ecx, [esp + 0x2a0]
push ecx
movzx ecx, byte [esp + 0x42]
or edx, eax
shl edx, 8
or edx, ecx
push edx
lea edx, [esp + 0x9a8]
push edx
mov ecx, esi
call fcn.0040a8c6
cmp dword [esp + 0xdc], 0
jl case.0x46f608.2066
lea ecx, [esp + 0x21c]
call fcn.0040a0d3
push 0
lea eax, [esp + 0x220]
push eax
push 0x3f
mov ecx, 0x7e10a0
call fcn.004048a4
push 0x33517d
lea ecx, [esp + 0x220]
push ecx
push 0xffffffffffffffff
push 0x6720a6
mov ecx, esi
call fcn.0040a8c6
mov edx, dword [esp + 0xdc]
push 0
push 0xffffff
push edx
push esi
mov ecx, 0x7e2b98
call fcn.00404052
lea ecx, [esp + 0x21c]
call fcn.004087a6
jmp case.0x46f608.2066
fild dword [esp + 0x14]
lea eax, [esp + 0x59c]
push eax
fstp dword [esi + 0x1e4]
fild dword [esp + 0x1c]
fstp dword [esi + 0x1e8]
call fcn.00403bd9
mov edi, dword [esi]
add esp, 4
cmp eax, 0xffffffff
jne 0x46d311
lea ecx, [esp + 0x69c]
push ecx
call fcn.004052ef
add esp, 4
push eax
push 0
lea edx, [esp + 0x2c4]
push edx
mov edx, dword [esp + 0x3c]
lea eax, [esp + 0x2e8]
push eax
mov eax, dword [esp + 0x3c]
lea ecx, [esp + 0x19c]
push ecx
push edx
push eax
jmp 0x46d35c
lea eax, [esp + 0x69c]
push eax
call fcn.004052ef
add esp, 4
push eax
lea ecx, [esp + 0x5a0]
push ecx
call fcn.00403bd9
mov edx, dword [eax*8 + 0x6ac1e8]
add esp, 4
push edx
lea eax, [esp + 0x2c4]
push eax
mov eax, dword [esp + 0x3c]
lea ecx, [esp + 0x2e8]
push ecx
mov ecx, dword [esp + 0x3c]
lea edx, [esp + 0x19c]
push edx
push eax
push ecx
mov edx, dword [edi + 0x40]
push ebx
push ebp
mov ecx, esi
call edx
movzx ecx, byte [esp + 0x38]
movzx edx, byte [esp + 0x39]
or ecx, 0xffffff00
shl ecx, 8
push 0x33517d
lea eax, [esp + 0x2a0]
push eax
movzx eax, byte [esp + 0x42]
or ecx, edx
shl ecx, 8
or ecx, eax
push ecx
lea ecx, [esp + 0x9a8]
push ecx
mov ecx, esi
call fcn.0040a8c6
mov edx, dword [esp + 0xfc]
push edx
mov ecx, esi
call fcn.00406893
movzx eax, byte [esp + 0x70]
movzx ecx, byte [esp + 0x71]
movzx edx, byte [esp + 0x72]
shl eax, 8
or eax, ecx
movzx ecx, byte [esp + 0x55]
shl eax, 8
or eax, edx
movzx edx, byte [esp + 0x56]
push eax
movzx eax, byte [esp + 0x58]
shl eax, 8
or eax, ecx
movzx ecx, byte [esp + 0x51]
shl eax, 8
or eax, edx
movzx edx, byte [esp + 0x52]
push eax
movzx eax, byte [esp + 0x54]
shl eax, 8
or eax, ecx
shl eax, 8
or eax, edx
push eax
lea eax, [esp + 0xba8]
push eax
mov ecx, esi
call fcn.00408846
mov ecx, dword [esp + 0x9c]
mov edx, dword [esp + 0xa0]
mov eax, dword [esi]
mov dword [esi + 0x238], ecx
mov ecx, dword [esp + 0x1c]
mov dword [esi + 0x23c], edx
mov edx, dword [eax + 0x34]
push ecx
mov ecx, esi
call edx
mov al, byte [esp + 0x5e]
mov edx, dword [esp + 0x78]
mov cl, byte [esp + 0x5f]
mov dword [esi + 0x2dc], edx
movzx edx, byte [esp + 0x3c]
mov byte [esi + 0x2d8], al
mov eax, dword [esp + 0xac]
mov byte [esi + 0x2d9], cl
mov ecx, dword [esp + 0xa4]
mov dword [esi + 0x2ec], eax
movzx eax, byte [esp + 0x3d]
shl edx, 8
mov dword [esi + 0x2f0], ecx
movzx ecx, byte [esp + 0x3e]
or edx, eax
shl edx, 8
or edx, ecx
mov dword [esi + 0x2f4], edx
mov edx, dword [esp + 0xa8]
mov eax, dword [esp + 0x150]
mov dword [esi + 0x2e8], edx
mov dword [esi + 0x2fc], eax
jmp case.0x46f608.2066
fild dword [esp + 0x14]
mov edi, dword [esi]
lea ecx, [esp + 0x69c]
push ecx
fstp dword [esi + 0x1e4]
fild dword [esp + 0x1c]
fstp dword [esi + 0x1e8]
call fcn.004052ef
mov ecx, dword [esp + 0x30]
add esp, 4
push eax
mov eax, dword [esp + 0x34]
push 0
lea edx, [esp + 0x194]
push edx
push eax
push ecx
mov edx, dword [edi + 0x40]
push ebx
push ebp
mov ecx, esi
call edx
movzx eax, byte [esp + 0x68]
movzx ecx, byte [esp + 0x69]
movzx edx, byte [esp + 0x6a]
shl eax, 8
or eax, ecx
mov ecx, dword [esp + 0x1c]
shl eax, 8
or eax, edx
mov dword [esi + 0x2a0], eax
mov eax, dword [esi]
mov edx, dword [eax + 0x34]
push ecx
mov ecx, esi
call edx
mov eax, dword [esp + 0xd4]
push eax
mov ecx, esi
call fcn.00406e4c
fld dword [esp + 0x90]
fstp dword [esi + 0x330]
fld dword [esp + 0x94]
fstp dword [esi + 0x334]
lea ecx, [esp + 0x59c]
push ecx
call fcn.00403bd9
add esp, 4
cmp eax, 0xffffffff
je case.0x46f608.2066
lea edx, [esp + 0x59c]
push edx
jmp 0x46fc41
fild dword [esp + 0x14]
mov edi, dword [esi]
lea eax, [esp + 0x69c]
push eax
fstp dword [esi + 0x1e4]
fild dword [esp + 0x1c]
fstp dword [esi + 0x1e8]
call fcn.004052ef
mov edx, dword [esp + 0x34]
add esp, 4
push eax
mov eax, dword [esp + 0x30]
push 0
lea ecx, [esp + 0x194]
push ecx
push edx
push eax
jmp 0x46d4e6
lea eax, [esp + 0x59c]
push eax
call fcn.00403bd9
mov edi, dword [esi]
add esp, 4
cmp eax, 0xffffffff
jne 0x46d5f9
lea ecx, [esp + 0x69c]
push ecx
call fcn.004052ef
add esp, 4
push eax
push 0
lea edx, [esp + 0x2c4]
push edx
mov edx, dword [esp + 0x3c]
lea eax, [esp + 0x2e8]
push eax
mov eax, dword [esp + 0x3c]
lea ecx, [esp + 0x19c]
push ecx
push edx
push eax
jmp 0x46d644
lea eax, [esp + 0x69c]
push eax
call fcn.004052ef
add esp, 4
push eax
lea ecx, [esp + 0x5a0]
push ecx
call fcn.00403bd9
mov edx, dword [eax*8 + 0x6ac1e8]
add esp, 4
push edx
lea eax, [esp + 0x2c4]
push eax
mov eax, dword [esp + 0x3c]
lea ecx, [esp + 0x2e8]
push ecx
mov ecx, dword [esp + 0x3c]
lea edx, [esp + 0x19c]
push edx
push eax
push ecx
mov edx, dword [edi + 0x40]
push ebx
push ebp
mov ecx, esi
call edx
lea eax, [esp + 0x59c]
push eax
call fcn.00403bd9
movzx edx, byte [esp + 0x3c]
movzx eax, byte [esp + 0x3d]
add esp, 4
or edx, 0xffffff00
push 0x33517d
shl edx, 8
lea ecx, [esp + 0x2a0]
push ecx
movzx ecx, byte [esp + 0x42]
or edx, eax
shl edx, 8
or edx, ecx
push edx
lea edx, [esp + 0x9a8]
push edx
mov ecx, esi
call fcn.0040a8c6
cmp byte [esp + 0xb9c], 0
je 0x46d700
movzx eax, byte [esp + 0x70]
movzx ecx, byte [esp + 0x71]
movzx edx, byte [esp + 0x72]
shl eax, 8
or eax, ecx
movzx ecx, byte [esp + 0x55]
shl eax, 8
or eax, edx
movzx edx, byte [esp + 0x56]
push eax
movzx eax, byte [esp + 0x58]
shl eax, 8
or eax, ecx
movzx ecx, byte [esp + 0x51]
shl eax, 8
or eax, edx
movzx edx, byte [esp + 0x52]
push eax
movzx eax, byte [esp + 0x54]
shl eax, 8
or eax, ecx
shl eax, 8
or eax, edx
push eax
lea eax, [esp + 0xba8]
push eax
mov ecx, esi
call fcn.00408846
mov ecx, dword [esp + 0x9c]
mov edx, dword [esp + 0xa0]
mov eax, dword [esi]
mov dword [esi + 0x238], ecx
mov ecx, dword [esp + 0x1c]
mov dword [esi + 0x23c], edx
mov edx, dword [eax + 0x34]
push ecx
mov ecx, esi
call edx
mov al, byte [esp + 0x5e]
mov edx, dword [esp + 0x78]
mov cl, byte [esp + 0x5f]
mov dword [esi + 0x2dc], edx
movzx edx, byte [esp + 0x3c]
mov byte [esi + 0x2d8], al
mov eax, dword [esp + 0xac]
shl edx, 8
mov byte [esi + 0x2d9], cl
mov ecx, dword [esp + 0xa4]
mov dword [esi + 0x2ec], eax
movzx eax, byte [esp + 0x3d]
or edx, eax
mov dword [esi + 0x2f0], ecx
movzx ecx, byte [esp + 0x3e]
shl edx, 8
or edx, ecx
cmp dword [esp + 0xc8], 0xffffffff
mov dword [esi + 0x2f4], edx
mov edx, dword [esp + 0xa8]
mov dword [esi + 0x2e8], edx
je case.0x46f608.2066
mov ax, word [esp + 0xc8]
mov word [esi + 0x2e0], ax
mov dword [esi + 0x2e4], 1
jmp case.0x46f608.2066
lea ecx, [esp + 0x59c]
push ecx
call fcn.00403bd9
mov edi, dword [esi]
add esp, 4
cmp eax, 0xffffffff
jne 0x46d7e4
lea edx, [esp + 0x69c]
push edx
call fcn.004052ef
add esp, 4
push eax
push 0
jmp 0x46d80d
lea eax, [esp + 0x69c]
push eax
call fcn.004052ef
add esp, 4
push eax
lea ecx, [esp + 0x5a0]
push ecx
call fcn.00403bd9
mov edx, dword [eax*8 + 0x6ac1e8]
add esp, 4
push edx
lea eax, [esp + 0x384]
push eax
mov eax, dword [esp + 0x3c]
lea ecx, [esp + 0x368]
push ecx
mov ecx, dword [esp + 0x3c]
lea edx, [esp + 0x19c]
push edx
mov edx, dword [edi + 0x40]
push eax
push ecx
push ebx
push ebp
mov ecx, esi
call edx
movzx ecx, byte [esp + 0x40]
movzx edx, byte [esp + 0x41]
mov eax, dword [esp + 0xec]
shl ecx, 8
or ecx, edx
mov dword [esi + 0x2bc], eax
movzx eax, byte [esp + 0x42]
shl ecx, 8
or ecx, eax
push ecx
lea ecx, [esp + 0xaa0]
push ecx
mov ecx, esi
call fcn.00406014
jmp case.0x46f608.2066
mov edi, dword [esi]
lea edx, [esp + 0x69c]
push edx
call fcn.004052ef
mov edx, dword [esp + 0x34]
add esp, 4
push eax
lea eax, [esp + 0x3e0]
push eax
mov eax, dword [esp + 0x34]
lea ecx, [esp + 0x194]
push ecx
push edx
mov edx, dword [edi + 0x40]
push eax
push ebx
push ebp
mov ecx, esi
call edx
mov eax, dword [esp + 0xb0]
mov ecx, dword [esp + 0xb4]
push eax
push ecx
mov ecx, esi
call fcn.004092e6
mov edx, dword [esp + 0x78]
push edx
mov ecx, esi
call fcn.004055c9
movzx ecx, byte [esp + 0x38]
movzx edx, byte [esp + 0x39]
or ecx, 0xffffff00
shl ecx, 8
push 0x33517d
lea eax, [esp + 0x2a0]
push eax
movzx eax, byte [esp + 0x42]
or ecx, edx
shl ecx, 8
or ecx, eax
push ecx
lea ecx, [esp + 0x9a8]
push ecx
mov ecx, esi
call fcn.0040a8c6
lea edx, [esp + 0x59c]
push edx
call fcn.00403bd9
add esp, 4
cmp eax, 0xffffffff
je 0x46d93b
lea eax, [esp + 0x59c]
push eax
call fcn.00403bd9
mov eax, dword [eax*8 + 0x6ac1e8]
add esp, 4
test eax, eax
je 0x46d93b
mov dword [esi + 0x18], eax
movzx edx, byte [esp + 0x60]
movzx eax, byte [esp + 0x61]
mov ecx, dword [esp + 0x108]
shl edx, 8
or edx, eax
movzx eax, byte [esp + 0x65]
shl edx, 8
mov dword [esi + 0x20c], ecx
movzx ecx, byte [esp + 0x62]
or edx, ecx
movzx ecx, byte [esp + 0x66]
mov dword [esi + 0x204], edx
movzx edx, byte [esp + 0x64]
shl edx, 8
or edx, eax
mov eax, dword [esp + 0x1c]
shl edx, 8
or edx, ecx
mov dword [esi + 0x200], edx
mov edx, dword [esi]
mov edx, dword [edx + 0x34]
push eax
mov ecx, esi
call edx
mov eax, dword [esp + 0xc0]
mov dword [esi + 0x254], eax
jmp case.0x46f608.2066
fild dword [esp + 0x14]
mov edi, dword [esi]
lea ecx, [esp + 0x69c]
push ecx
fstp dword [esi + 0x1e4]
fild dword [esp + 0x1c]
fstp dword [esi + 0x1e8]
call fcn.004052ef
mov ecx, dword [esp + 0x30]
add esp, 4
push eax
mov eax, dword [esp + 0x34]
lea edx, [esp + 0x190]
push edx
mov edx, dword [edi + 0x10]
push eax
push ecx
push ebx
push ebp
mov ecx, esi
call edx
fld dword [esp + 0x88]
call fcn.006380e0
fld dword [esp + 0xd0]
push eax
call fcn.006380e0
fld dword [esp + 0xdc]
push eax
call fcn.006380e0
push eax
mov ecx, esi
call fcn.0040af9c
mov ecx, dword [esp + 0x1c]
mov eax, dword [esi]
mov edx, dword [eax + 0x34]
push ecx
mov ecx, esi
call edx
jmp case.0x46f608.2066
fild dword [esp + 0x14]
mov edi, dword [esi]
lea eax, [esp + 0x69c]
push eax
fstp dword [esi + 0x1e4]
fild dword [esp + 0x1c]
fstp dword [esi + 0x1e8]
call fcn.004052ef
mov edx, dword [esp + 0x34]
add esp, 4
push eax
mov eax, dword [esp + 0x30]
lea ecx, [esp + 0x190]
push ecx
push edx
mov edx, dword [edi + 0x10]
push eax
push ebx
push ebp
mov ecx, esi
call edx
mov eax, dword [esp + 0x8c]
mov edx, dword [esp + 0x80]
push eax
lea ecx, [esp + 0x260]
push ecx
mov ecx, dword [esp + 0x8c]
push edx
lea eax, [esp + 0x308]
push eax
mov eax, dword [esp + 0x12c]
push ecx
lea edx, [esp + 0x250]
push edx
push eax
lea ecx, [esp + 0x1c8]
push ecx
mov ecx, esi
call fcn.004042aa
mov edx, dword [esp + 0x140]
push edx
mov ecx, esi
call fcn.0040984a
mov ecx, dword [esp + 0x1c]
mov eax, dword [esi]
mov edx, dword [eax + 0x34]
push ecx
mov ecx, esi
call edx
mov eax, dword [esp + 0xc0]
mov ecx, dword [esp + 0x90]
mov edx, dword [esp + 0x94]
mov dword [esi + 0x244], eax
lea eax, [esp + 0xa9c]
mov dword [esi + 0x2c0], ecx
push eax
mov ecx, esi
mov dword [esi + 0x2c4], edx
call fcn.0040d819
jmp case.0x46f608.2066
fild dword [esp + 0x14]
mov edi, dword [esi]
lea ecx, [esp + 0x69c]
push ecx
fstp dword [esi + 0x1e4]
fild dword [esp + 0x1c]
fstp dword [esi + 0x1e8]
call fcn.004052ef
mov ecx, dword [esp + 0x30]
add esp, 4
push eax
mov eax, dword [esp + 0x34]
lea edx, [esp + 0x240]
push edx
mov edx, dword [edi + 0x10]
push eax
push ecx
push ebx
push ebp
mov ecx, esi
call edx
mov eax, dword [esi]
mov edi, dword [esp + 0xe4]
mov edx, dword [eax + 0x40]
lea ecx, [esp + 0x1ac]
push ecx
push edi
mov ecx, esi
call edx
mov eax, dword [esp + 0x120]
lea ecx, [esp + 0x3bc]
push ecx
mov ecx, esi
mov dword [esi + 0x21c], eax
call fcn.0040c51d
mov edx, dword [esp + 0x7c]
mov eax, dword [esp + 0x174]
mov ecx, dword [esp + 0x170]
push edx
mov edx, dword [esp + 0x170]
push eax
mov eax, dword [esp + 0x170]
push ecx
push edx
push eax
mov ecx, esi
call fcn.00406d2a
mov edx, dword [esi]
mov eax, dword [esp + 0x1c]
mov edx, dword [edx + 0x34]
push eax
mov ecx, esi
mov word [esi + 0x1fc], di
call edx
jmp case.0x46f608.2066
fild dword [esp + 0x14]
mov edi, dword [esi]
lea eax, [esp + 0x69c]
push eax
fstp dword [esi + 0x1e4]
fild dword [esp + 0x1c]
fstp dword [esi + 0x1e8]
call fcn.004052ef
mov edx, dword [esp + 0x34]
add esp, 4
push eax
mov eax, dword [esp + 0x30]
lea ecx, [esp + 0x190]
push ecx
push edx
mov edx, dword [edi + 0x10]
push eax
push ebx
push ebp
mov ecx, esi
call edx
movzx edx, byte [esp + 0x6f]
mov eax, dword [esi]
mov eax, dword [eax + 0x40]
push edx
movzx edx, byte [esp + 0x49]
push edx
mov ecx, esi
call eax
mov ecx, dword [esp + 0x164]
mov edx, dword [esi]
mov edx, dword [edx + 0x44]
lea eax, [esp + 0x27c]
push eax
push ecx
mov ecx, dword [esp + 0x130]
lea eax, [esp + 0x344]
push eax
push ecx
lea eax, [esp + 0x3ac]
push eax
mov ecx, esi
call edx
fld dword [esp + 0x90]
mov ecx, dword [esp + 0x1c]
mov eax, dword [esi]
fstp dword [esi + 0x274]
fld dword [esp + 0x94]
mov edx, dword [eax + 0x34]
push ecx
fstp dword [esi + 0x278]
mov ecx, esi
call edx
mov ax, word [esp + 0x148]
mov word [esi + 0x2a0], ax
jmp case.0x46f608.2066
fild dword [esp + 0x14]
mov edi, dword [esi]
lea ecx, [esp + 0x69c]
push ecx
fstp dword [esi + 0x1e4]
fild dword [esp + 0x1c]
fstp dword [esi + 0x1e8]
call fcn.004052ef
mov ecx, dword [esp + 0x30]
add esp, 4
push eax
mov eax, dword [esp + 0x34]
lea edx, [esp + 0x190]
push edx
mov edx, dword [edi + 0x10]
push eax
push ecx
push ebx
push ebp
mov ecx, esi
call edx
movzx eax, word [esp + 0x80]
movzx ecx, byte [esp + 0xe8]
movzx edx, byte [esp + 0x45]
push 0
push 0
push eax
push ecx
push edx
mov ecx, esi
call fcn.0040c7f7
lea eax, [esp + 0x27c]
push eax
lea ecx, [esp + 0x400]
push ecx
lea edx, [esp + 0x264]
push edx
lea eax, [esp + 0x348]
push eax
lea ecx, [esp + 0x3ac]
push ecx
mov ecx, esi
call fcn.00409bc4
mov edx, dword [esi]
mov eax, dword [esp + 0x1c]
mov edx, dword [edx + 0x34]
push eax
mov ecx, esi
call edx
jmp case.0x46f608.2066
fild dword [esp + 0x14]
mov al, byte [esp + 0x77]
mov cl, byte [esp + 0x46]
mov edi, dword [esi]
fstp dword [esi + 0x1e4]
lea edx, [esp + 0x69c]
fild dword [esp + 0x18]
push edx
mov byte [esi + 0x2b3], al
mov byte [esi + 0x2b4], cl
fstp dword [esi + 0x1e8]
call fcn.004052ef
mov edx, dword [esp + 0x90]
add esp, 4
push eax
mov eax, dword [esp + 0xec]
push eax
lea ecx, [esp + 0x284]
push ecx
mov ecx, dword [esp + 0x8c]
push edx
lea eax, [esp + 0x26c]
push eax
mov eax, dword [esp + 0x98]
push ecx
lea edx, [esp + 0x314]
push edx
mov edx, dword [esp + 0x48]
push eax
mov eax, dword [edi + 0x64]
lea ecx, [esp + 0x25c]
push ecx
push edx
push ebx
push ebp
mov ecx, esi
call eax
mov ecx, dword [esp + 0x98]
push ecx
mov ecx, esi
call fcn.0040c216
mov edx, dword [esi]
mov edi, dword [esp + 0xe4]
mov edx, dword [edx + 0x68]
lea eax, [esp + 0x1ac]
push eax
push edi
mov ecx, esi
call edx
fld dword [esp + 0x90]
mov ecx, dword [esp + 0x1c]
fstp dword [esi + 0x304]
mov eax, dword [esi]
fld dword [esp + 0x94]
mov edx, dword [eax + 0x34]
fstp dword [esi + 0x308]
push ecx
mov ecx, esi
mov word [esi + 0x21c], di
call edx
mov eax, dword [esp + 0x130]
mov dword [esi + 0x310], eax
jmp 0x46d545
fild dword [esp + 0x14]
mov eax, dword [esi]
add eax, 0x10
mov dword [esp + 0x10], eax
fstp dword [esi + 0x1e4]
lea eax, [esp + 0x69c]
fild dword [esp + 0x18]
push eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
mov edx, dword [esp + 0x34]
add esp, 4
push eax
mov eax, dword [esp + 0x30]
lea ecx, [esp + 0x190]
push ecx
push edx
mov edx, dword [esp + 0x1c]
push eax
mov eax, dword [edx]
push ebx
push ebp
mov ecx, esi
call eax
mov ecx, dword [esp + 0x20]
lea edx, [esp + 0x17c]
push edx
lea eax, [esi + 0x200]
push eax
mov dword [esi + 0x24], ecx
call edi
mov edx, dword [esi]
mov eax, dword [esp + 0x1c]
mov edx, dword [edx + 0x34]
push eax
jmp 0x46fc20
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
jmp 0x46fbec
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
jmp 0x46fbec
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
jmp 0x46fbec
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
jmp 0x46fbec
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
jmp 0x46fbec
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x64
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
mov ecx, dword [esp + 0x34]
mov edx, dword [esp + 0x30]
add esp, 4
push eax
mov eax, dword [esp + 0x9c]
push eax
mov eax, dword [esp + 0x18]
push ecx
push edx
mov edx, dword [eax]
push ebx
push ebp
mov ecx, esi
call edx
mov eax, dword [esi]
mov edx, dword [eax + 0x68]
mov ecx, esi
call edx
fld dword [esp + 0x15c]
push ecx
fstp dword [esp]
lea eax, [esp + 0x580]
push eax
lea ecx, [esp + 0x4e4]
push ecx
lea edx, [esp + 0x548]
push edx
lea eax, [esp + 0x48c]
push eax
lea ecx, [esp + 0x510]
push ecx
lea edx, [esp + 0x4d4]
push edx
lea eax, [esp + 0x578]
push eax
lea ecx, [esp + 0x53c]
push ecx
lea edx, [esp + 0x4c0]
push edx
lea eax, [esp + 0x484]
push eax
lea ecx, [esi + 0x23c]
call fcn.0040aace
lea ecx, [esp + 0x1ac]
push ecx
lea edx, [esi + 0x4b8]
push edx
call edi
lea eax, [esp + 0x17c]
push eax
lea ecx, [esi + 0x200]
push ecx
call edi
mov edx, dword [esp + 0x20]
mov dword [esi + 0x24], edx
jmp 0x46fc16
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
jmp 0x46fbec
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
jmp 0x46fbec
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
jmp 0x46fbec
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
jmp 0x46fbec
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
jmp 0x46fbec
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
jmp 0x46fbec
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
jmp 0x46fbec
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
jmp 0x46fbec
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
jmp 0x46fbec
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
jmp 0x46fbec
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
jmp 0x46fbec
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
jmp 0x46fbec
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
jmp 0x46fbec
fild dword [esp + 0x14]
mov ecx, dword [esp + 0x30]
mov edx, dword [esi]
mov edx, dword [edx + 0x10]
push 0xffffffffffffffff
fstp dword [esi + 0x1e4]
fild dword [esp + 0x1c]
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x34]
push ecx
fstp dword [esi + 0x1e8]
push eax
jmp 0x46fbf8
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
jmp 0x46fbec
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
mov ecx, dword [esp + 0x34]
mov edx, dword [esp + 0x30]
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
push ecx
push edx
mov edx, dword [eax]
push ebx
push ebp
mov ecx, esi
call edx
mov eax, dword [esp + 0x20]
lea ecx, [esp + 0x17c]
push ecx
lea edx, [esi + 0x200]
push edx
mov dword [esi + 0x24], eax
call edi
mov ecx, dword [esp + 0x1c]
mov eax, dword [esi]
mov edx, dword [eax + 0x34]
push ecx
mov ecx, esi
call edx
mov eax, dword [esi]
mov ecx, dword [esp + 0x48]
mov edx, dword [eax + 8]
jmp 0x46fc1f
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
mov ecx, dword [esp + 0x34]
mov edx, dword [esp + 0x30]
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
push ecx
push edx
mov edx, dword [eax]
push ebx
push ebp
mov ecx, esi
call edx
mov eax, dword [esp + 0x20]
lea ecx, [esp + 0x17c]
push ecx
lea edx, [esi + 0x200]
push edx
mov dword [esi + 0x24], eax
call edi
mov ecx, dword [esp + 0x1c]
mov eax, dword [esi]
mov edx, dword [eax + 0x34]
push ecx
mov ecx, esi
call edx
mov eax, dword [esi]
mov ecx, dword [esp + 0x48]
mov edx, dword [eax + 8]
jmp 0x46fc1f
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
mov ecx, dword [esp + 0x34]
mov edx, dword [esp + 0x30]
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
push ecx
push edx
mov edx, dword [eax]
push ebx
push ebp
mov ecx, esi
call edx
mov eax, dword [esp + 0x20]
lea ecx, [esp + 0x17c]
push ecx
lea edx, [esi + 0x200]
push edx
mov dword [esi + 0x24], eax
call edi
mov ecx, dword [esp + 0x1c]
mov eax, dword [esi]
mov edx, dword [eax + 0x34]
push ecx
mov ecx, esi
call edx
mov eax, dword [esi]
mov ecx, dword [esp + 0x48]
mov edx, dword [eax + 8]
jmp 0x46fc1f
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
jmp 0x46fbec
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
mov ecx, dword [esp + 0x34]
mov edx, dword [esp + 0x30]
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
push ecx
push edx
mov edx, dword [eax]
push ebx
push ebp
mov ecx, esi
call edx
mov eax, dword [esp + 0x20]
lea ecx, [esp + 0x17c]
push ecx
lea edx, [esi + 0x200]
push edx
mov dword [esi + 0x24], eax
call edi
mov ecx, dword [esp + 0x1c]
mov eax, dword [esi]
mov edx, dword [eax + 0x34]
push ecx
mov ecx, esi
call edx
mov eax, dword [esi]
mov ecx, dword [esp + 0x48]
mov edx, dword [eax + 8]
jmp 0x46fc1f
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
mov ecx, dword [esp + 0x34]
mov edx, dword [esp + 0x30]
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
push ecx
push edx
mov edx, dword [eax]
push ebx
push ebp
mov ecx, esi
call edx
mov eax, dword [esp + 0x20]
lea ecx, [esp + 0x17c]
push ecx
lea edx, [esi + 0x200]
push edx
mov dword [esi + 0x24], eax
call edi
mov ecx, dword [esp + 0x1c]
mov eax, dword [esi]
mov edx, dword [eax + 0x34]
push ecx
mov ecx, esi
call edx
mov eax, dword [esi]
mov ecx, dword [esp + 0x48]
mov edx, dword [eax + 8]
jmp 0x46fc1f
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
jmp 0x46fbec
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
mov ecx, dword [esp + 0x34]
mov edx, dword [esp + 0x30]
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
push ecx
push edx
mov edx, dword [eax]
push ebx
push ebp
mov ecx, esi
call edx
mov eax, dword [esp + 0x20]
lea ecx, [esp + 0x17c]
push ecx
lea edx, [esi + 0x200]
push edx
mov dword [esi + 0x24], eax
call edi
mov ecx, dword [esp + 0x1c]
mov eax, dword [esi]
mov edx, dword [eax + 0x34]
push ecx
mov ecx, esi
call edx
mov eax, dword [esi]
mov ecx, dword [esp + 0x48]
mov edx, dword [eax + 8]
jmp 0x46fc1f
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
jmp 0x46fbec
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
mov ecx, dword [esp + 0x34]
mov edx, dword [esp + 0x30]
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
push ecx
push edx
mov edx, dword [eax]
push ebx
push ebp
mov ecx, esi
call edx
mov eax, dword [esp + 0x20]
lea ecx, [esp + 0x17c]
push ecx
lea edx, [esi + 0x200]
push edx
mov dword [esi + 0x24], eax
call edi
mov ecx, dword [esp + 0x1c]
mov eax, dword [esi]
mov edx, dword [eax + 0x34]
push ecx
mov ecx, esi
call edx
mov eax, dword [esi]
mov ecx, dword [esp + 0x48]
mov edx, dword [eax + 8]
jmp 0x46fc1f
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
mov ecx, dword [esp + 0x34]
mov edx, dword [esp + 0x30]
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
push ecx
push edx
mov edx, dword [eax]
push ebx
push ebp
mov ecx, esi
call edx
mov eax, dword [esp + 0x20]
lea ecx, [esp + 0x17c]
push ecx
lea edx, [esi + 0x200]
push edx
mov dword [esi + 0x24], eax
call edi
mov ecx, dword [esp + 0x1c]
mov eax, dword [esi]
mov edx, dword [eax + 0x34]
push ecx
mov ecx, esi
call edx
mov eax, dword [esi]
mov ecx, dword [esp + 0x48]
mov edx, dword [eax + 8]
jmp 0x46fc1f
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
jmp 0x46fbec
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
jmp 0x46fbec
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
jmp 0x46fbec
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
jmp 0x46fbec
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
jmp 0x46fbec
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
jmp 0x46fbec
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
jmp 0x46fbec
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
jmp 0x46fbec
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
jmp 0x46fbec
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
jmp 0x46fbec
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
jmp 0x46fbec
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
jmp 0x46fbec
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
jmp 0x46fbec
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
jmp 0x46fbec
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
jmp 0x46fbec
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
jmp 0x46fbec
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
mov ecx, dword [esp + 0x34]
mov edx, dword [esp + 0x30]
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
push ecx
push edx
mov edx, dword [eax]
push ebx
push ebp
mov ecx, esi
call edx
lea eax, [esp + 0x17c]
push eax
lea ecx, [esi + 0x200]
push ecx
call edi
mov edx, dword [esi]
mov eax, dword [esp + 0x1c]
mov edx, dword [edx + 0x34]
push eax
mov ecx, esi
call edx
mov eax, dword [esp + 0x1e0]
mov ecx, dword [esp + 0x1e4]
mov edx, dword [esp + 0x1e8]
mov dword [esi + 0x240], ecx
mov ecx, dword [esp + 0x1f0]
mov dword [esi + 0x23c], eax
mov eax, dword [esp + 0x1ec]
mov dword [esi + 0x244], edx
mov edx, dword [esp + 0x1f4]
mov dword [esi + 0x248], eax
mov eax, dword [esp + 0x1f8]
mov dword [esi + 0x24c], ecx
mov ecx, dword [esp + 0x200]
mov dword [esi + 0x250], edx
mov edx, dword [esp + 0x204]
mov dword [esi + 0x254], eax
mov eax, dword [esp + 0x208]
mov dword [esi + 0x260], edx
mov edx, dword [esp + 0x210]
mov dword [esi + 0x25c], ecx
mov ecx, dword [esp + 0x20c]
mov dword [esi + 0x264], eax
mov eax, dword [esp + 0x214]
mov dword [esi + 0x268], ecx
mov ecx, dword [esp + 0x218]
mov dword [esi + 0x26c], edx
mov dword [esi + 0x270], eax
mov dword [esi + 0x274], ecx
lea edx, [esp + 0x59c]
push edx
call fcn.00403bd9
add esp, 4
cmp eax, 0xffffffff
je case.0x46f608.2066
lea eax, [esp + 0x59c]
push eax
jmp 0x46fc41
cmp eax, 0x200
jg 0x46f168
je 0x46f097
sub eax, 0x101
cmp eax, 4
ja case.0x46f608.2066
jmp dword [eax*4 + 0x4700c0]
fild dword [esp + 0x14]
mov eax, dword [esi]
lea ecx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push ecx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
mov ecx, dword [esp + 0x30]
add esp, 4
push eax
mov eax, dword [esp + 0x34]
lea edx, [esp + 0x190]
push edx
mov edx, dword [esp + 0x18]
push eax
mov eax, dword [edx]
push ecx
push ebx
push ebp
mov ecx, esi
call eax
lea ecx, [esp + 0x17c]
push ecx
lea edx, [esi + 0x200]
push edx
call edi
mov ecx, dword [esp + 0x1c]
mov eax, dword [esi]
mov edx, dword [eax + 0x34]
push ecx
mov ecx, esi
call edx
lea eax, [esp + 0x1dc]
push eax
mov ecx, esi
call fcn.0040b604
lea ecx, [esp + 0x1fc]
push ecx
mov ecx, esi
call fcn.00410325
jmp 0x46ee2d
fild dword [esp + 0x14]
mov eax, dword [esi]
lea ecx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push ecx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
mov ecx, dword [esp + 0x30]
add esp, 4
push eax
mov eax, dword [esp + 0x34]
lea edx, [esp + 0x190]
push edx
mov edx, dword [esp + 0x18]
push eax
mov eax, dword [edx]
push ecx
push ebx
push ebp
mov ecx, esi
call eax
mov ecx, dword [esp + 0x20]
lea edx, [esp + 0x17c]
push edx
lea eax, [esi + 0x200]
push eax
mov dword [esi + 0x24], ecx
call edi
mov edx, dword [esi]
mov eax, dword [esp + 0x1c]
mov edx, dword [edx + 0x34]
push eax
mov ecx, esi
call edx
lea eax, [esp + 0x1dc]
push eax
mov ecx, esi
call fcn.0040b604
lea ecx, [esp + 0x1fc]
push ecx
mov ecx, esi
call fcn.00410325
mov edx, dword [esi]
mov eax, dword [esp + 0x48]
mov edx, dword [edx + 8]
push eax
jmp 0x46fc20
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
mov ecx, dword [esp + 0x34]
mov edx, dword [esp + 0x30]
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
push ecx
push edx
mov edx, dword [eax]
push ebx
push ebp
mov ecx, esi
call edx
mov eax, dword [esp + 0x20]
lea ecx, [esp + 0x17c]
push ecx
lea edx, [esi + 0x200]
push edx
mov dword [esi + 0x24], eax
call edi
mov eax, dword [esi]
mov ecx, dword [esp + 0x1c]
mov edx, dword [eax + 0x34]
push ecx
jmp 0x46ef75
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
jmp 0x46fbec
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
jmp 0x46fbec
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x64
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
movzx ecx, byte [esp + 0x73]
mov edx, dword [esp + 0x34]
add esp, 4
push eax
movzx eax, byte [esp + 0x49]
push ecx
push eax
mov eax, dword [esp + 0x38]
lea ecx, [esp + 0x198]
push ecx
push edx
mov edx, dword [esp + 0x24]
push eax
mov eax, dword [edx]
push ebx
push ebp
mov ecx, esi
call eax
lea ecx, [esp + 0x17c]
push ecx
lea edx, [esi + 0x200]
push edx
call edi
mov eax, dword [esp + 0xf4]
mov ecx, dword [esp + 0xf0]
mov edx, dword [esp + 0x118]
push eax
mov eax, dword [esp + 0x118]
push ecx
mov ecx, dword [esp + 0x118]
push edx
mov edx, dword [esp + 0x118]
push eax
push ecx
push edx
mov ecx, esi
call fcn.0040291e
mov ecx, dword [esp + 0x1c]
mov eax, dword [esi]
mov edx, dword [eax + 0x34]
push ecx
mov ecx, esi
call edx
lea eax, [esp + 0x1dc]
push eax
mov ecx, esi
call fcn.0040d5d5
lea ecx, [esp + 0x1fc]
push ecx
mov ecx, esi
call fcn.004108c0
jmp 0x46ee2d
cmp eax, 0x800
jg 0x46f5fa
je 0x46f5bb
cmp eax, 0x400
jg 0x46f328
je 0x46f2bf
sub eax, 0x201
je 0x46f280
dec eax
je 0x46f214
sub eax, 2
jne case.0x46f608.2066
fild dword [esp + 0x14]
mov eax, dword [esi]
lea ecx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push ecx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
mov ecx, dword [esp + 0x30]
add esp, 4
push eax
mov eax, dword [esp + 0x34]
lea edx, [esp + 0x190]
push edx
mov edx, dword [esp + 0x18]
push eax
mov eax, dword [edx]
push ecx
push ebx
push ebp
mov ecx, esi
call eax
mov ecx, dword [esp + 0x20]
lea edx, [esp + 0x17c]
push edx
lea eax, [esi + 0x200]
push eax
mov dword [esi + 0x24], ecx
call edi
mov edx, dword [esi]
mov eax, dword [esp + 0x1c]
mov edx, dword [edx + 0x34]
push eax
jmp 0x46fc20
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
mov ecx, dword [esp + 0x34]
mov edx, dword [esp + 0x30]
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
push ecx
push edx
mov edx, dword [eax]
push ebx
push ebp
mov ecx, esi
call edx
lea eax, [esp + 0x17c]
push eax
lea ecx, [esi + 0x200]
push ecx
call edi
mov edx, dword [esi]
mov eax, dword [esp + 0x1c]
mov edx, dword [edx + 0x34]
push eax
jmp 0x46fc20
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
jmp 0x46fbec
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
mov ecx, dword [esp + 0x34]
mov edx, dword [esp + 0x30]
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
push ecx
push edx
mov edx, dword [eax]
push ebx
push ebp
mov ecx, esi
call edx
mov eax, dword [esp + 0x20]
lea ecx, [esp + 0x17c]
push ecx
lea edx, [esi + 0x200]
push edx
mov dword [esi + 0x24], eax
call edi
jmp 0x46fc24
sub eax, 0x401
cmp eax, 6
ja case.0x46f608.2066
jmp dword [eax*4 + 0x4700d4]
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
mov ecx, dword [esp + 0x34]
mov edx, dword [esp + 0x30]
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
push ecx
push edx
mov edx, dword [eax]
push ebx
push ebp
mov ecx, esi
call edx
mov eax, dword [esp + 0x20]
lea ecx, [esp + 0x17c]
push ecx
lea edx, [esi + 0x200]
push edx
mov dword [esi + 0x24], eax
call edi
mov ecx, dword [esp + 0x1c]
mov eax, dword [esi]
mov edx, dword [eax + 0x34]
push ecx
mov ecx, esi
call edx
mov eax, dword [esi]
mov ecx, dword [esp + 0x48]
mov edx, dword [eax + 8]
jmp 0x46fc1f
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
mov ecx, dword [esp + 0x34]
mov edx, dword [esp + 0x30]
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
push ecx
push edx
mov edx, dword [eax]
push ebx
push ebp
mov ecx, esi
call edx
mov eax, dword [esp + 0x20]
lea ecx, [esp + 0x17c]
push ecx
lea edx, [esi + 0x200]
push edx
mov dword [esi + 0x24], eax
call edi
mov ecx, dword [esp + 0x1c]
mov eax, dword [esi]
mov edx, dword [eax + 0x34]
push ecx
mov ecx, esi
call edx
mov eax, dword [esi]
mov ecx, dword [esp + 0x48]
mov edx, dword [eax + 8]
jmp 0x46fc1f
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
jmp 0x46fbec
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
jmp 0x46fbec
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
mov ecx, dword [esp + 0x34]
mov edx, dword [esp + 0x30]
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
push ecx
push edx
mov edx, dword [eax]
push ebx
push ebp
mov ecx, esi
call edx
mov eax, dword [esp + 0x20]
lea ecx, [esp + 0x17c]
push ecx
lea edx, [esi + 0x200]
push edx
mov dword [esi + 0x24], eax
call edi
mov ecx, dword [esp + 0x1c]
mov eax, dword [esi]
mov edx, dword [eax + 0x34]
push ecx
mov ecx, esi
call edx
mov eax, dword [esi]
mov ecx, dword [esp + 0x48]
mov edx, dword [eax + 8]
jmp 0x46fc1f
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
mov ecx, dword [esp + 0x34]
mov edx, dword [esp + 0x30]
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
push ecx
push edx
mov edx, dword [eax]
push ebx
push ebp
mov ecx, esi
call edx
mov eax, dword [esp + 0x20]
lea ecx, [esp + 0x17c]
push ecx
lea edx, [esi + 0x200]
push edx
mov dword [esi + 0x24], eax
call edi
mov ecx, dword [esp + 0x1c]
mov eax, dword [esi]
mov edx, dword [eax + 0x34]
push ecx
mov ecx, esi
call edx
mov eax, dword [esi]
mov ecx, dword [esp + 0x48]
mov edx, dword [eax + 8]
jmp 0x46fc1f
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
jmp 0x46fbec
sub eax, 0x801
cmp eax, 0x1a
ja case.0x46f608.2066
jmp dword [eax*4 + 0x4700f0]
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
jmp 0x46fbec
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
jmp 0x46fbec
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
jmp 0x46fbec
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
jmp 0x46fbec
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
jmp 0x46fbec
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
jmp 0x46fbec
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
jmp 0x46fbec
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
jmp 0x46fbec
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
jmp 0x46fbec
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
jmp 0x46fbec
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
jmp 0x46fbec
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
jmp 0x46fbec
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
jmp 0x46fbec
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
jmp 0x46fbec
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
jmp 0x46fbec
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
jmp 0x46fbec
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
jmp 0x46fbec
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
jmp 0x46fbec
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
jmp 0x46fbec
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
jmp 0x46fbec
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
jmp 0x46fbec
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
jmp 0x46fbec
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
jmp 0x46fbec
fild dword [esp + 0x14]
mov eax, dword [esi]
lea edx, [esp + 0x69c]
add eax, 0x10
fstp dword [esi + 0x1e4]
push edx
fild dword [esp + 0x1c]
mov dword [esp + 0x14], eax
fstp dword [esi + 0x1e8]
call fcn.004052ef
add esp, 4
push eax
lea eax, [esp + 0x190]
push eax
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x38]
mov edx, dword [esp + 0x34]
push ecx
push edx
mov edx, dword [eax]
push ebx
push ebp
mov ecx, esi
call edx
mov eax, dword [esp + 0x20]
lea ecx, [esp + 0x17c]
push ecx
lea edx, [esi + 0x200]
push edx
mov dword [esi + 0x24], eax
call edi
mov eax, dword [esi]
mov ecx, dword [esp + 0x1c]
mov edx, dword [eax + 0x34]
push ecx
mov ecx, esi
call edx
lea eax, [esp + 0x59c]
push eax
call fcn.00403bd9
add esp, 4
cmp eax, 0xffffffff
je case.0x46f608.2066
lea ecx, [esp + 0x59c]
push ecx
call fcn.00403bd9
mov eax, dword [eax*8 + 0x6ac1e8]
add esp, 4
test eax, eax
je case.0x46f608.2066
mov dword [esi + 0x18], eax
lea edi, [esp + 0x59c]
mov ebx, 9
sub edi, 0x20
mov ecx, edi
call fcn.004087a6
dec ebx
jns 0x46fc63
lea ecx, [esp + 0x43c]
call fcn.004087a6
lea ecx, [esp + 0x1fc]
call fcn.004087a6
lea ecx, [esp + 0x1dc]
call fcn.004087a6
lea ecx, [esp + 0x35c]
call fcn.004087a6
lea ecx, [esp + 0x37c]
call fcn.004087a6
lea ecx, [esp + 0x31c]
call fcn.004087a6
lea ecx, [esp + 0x41c]
call fcn.004087a6
lea ecx, [esp + 0x3fc]
call fcn.004087a6
lea ecx, [esp + 0x3dc]
call fcn.004087a6
lea ecx, [esp + 0x3bc]
call fcn.004087a6
lea ecx, [esp + 0x33c]
call fcn.004087a6
lea ecx, [esp + 0x39c]
call fcn.004087a6
lea ecx, [esp + 0x25c]
call fcn.004087a6
lea ecx, [esp + 0x2fc]
call fcn.004087a6
lea ecx, [esp + 0x23c]
call fcn.004087a6
lea ecx, [esp + 0x29c]
call fcn.004087a6
lea ecx, [esp + 0x2bc]
call fcn.004087a6
lea ecx, [esp + 0x27c]
call fcn.004087a6
lea ecx, [esp + 0x2dc]
call fcn.004087a6
lea ecx, [esp + 0x18c]
call fcn.004087a6
mov ecx, dword [esp + 0xc9c]
pop edi
mov eax, esi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.006376f4
add esp, 0xc90
ret 8