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

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0x1fc
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0xc0], eax
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0xbc], eax
mov eax, dword [ebp + 0x1c]
mov dword [ebp - 0xc8], eax
mov eax, dword [ebp + 0x20]
mov dword [ebp - 0xc4], eax
mov eax, dword [ebp + 0x28]
mov dword [ebp - 0xd0], eax
mov eax, dword [ebp + 0x2c]
mov dword [ebp - 0xcc], eax
mov eax, dword [ebp + 0x34]
mov dword [ebp - 0xd8], eax
mov eax, dword [ebp + 0x38]
mov dword [ebp - 0xd4], eax
mov eax, dword [ebp + 0x40]
mov dword [ebp - 0xe0], eax
mov eax, dword [ebp + 0x44]
mov dword [ebp - 0xdc], eax
mov eax, dword [ebp + 0x5c]
mov dword [ebp - 0xe8], eax
mov eax, dword [ebp + 0x60]
mov dword [ebp - 0xe4], eax
mov eax, dword [ebp + 0x64]
mov dword [ebp - 0xf0], eax
mov eax, dword [ebp + 0x68]
mov dword [ebp - 0xec], eax
mov eax, dword [ebp + 0x74]
mov dword [ebp - 0xf8], eax
mov eax, dword [ebp + 0x78]
mov dword [ebp - 0xf4], eax
mov eax, dword [ebp + 0x80]
mov dword [ebp - 0x100], eax
mov eax, dword [ebp + 0x84]
mov dword [ebp - 0xfc], eax
mov eax, dword [ebp + 0x88]
mov dword [ebp - 0x108], eax
mov eax, dword [ebp + 0x8c]
mov dword [ebp - 0x104], eax
mov eax, dword [ebp + 0xa0]
mov dword [ebp - 0x110], eax
mov eax, dword [ebp + 0xa4]
mov dword [ebp - 0x10c], eax
mov eax, dword [ebp + 0xa8]
mov dword [ebp - 0x118], eax
mov eax, dword [ebp + 0xac]
mov dword [ebp - 0x114], eax
mov eax, dword [ebp + 0xc0]
mov dword [ebp - 0x120], eax
mov eax, dword [ebp + 0xc4]
mov dword [ebp - 0x11c], eax
lea eax, [ebp - 0xb4]
mov dword [esp + 0x20], eax
lea eax, [ebp - 0xac]
mov dword [esp + 0x1c], eax
lea eax, [ebp - 0xa8]
mov dword [esp + 0x18], eax
lea eax, [ebp - 0x98]
mov dword [esp + 0x14], eax
lea eax, [ebp - 0x74]
mov dword [esp + 0x10], eax
lea eax, [ebp - 0x48]
mov dword [esp + 0xc], eax
lea eax, [ebp - 0x44]
mov dword [esp + 8], eax
lea eax, [ebp - 0x38]
mov dword [esp + 4], eax
lea eax, [ebp + 0x98]
mov dword [esp], eax
call sym.___super_fnc__2541
mov eax, dword [ebp - 0x48]
test eax, eax
jne 0x46bed0
mov eax, dword [ebp + 0x98]
mov eax, dword [eax]
and eax, 8
test eax, eax
je 0x46bba7
mov eax, 0xd
jmp 0x46de0d
lea eax, [ebp - 0x58]
mov dword [esp + 8], eax
lea eax, [ebp - 0x50]
mov dword [esp + 4], eax
lea eax, [ebp + 0x98]
mov dword [esp], eax
call sym.___super_fnc__2542
mov eax, dword [ebp + 0xbc]
mov edx, 0
mov ebx, eax
and ebx, 0xffffffcf
mov dword [ebp - 0x138], ebx
mov eax, edx
and ah, 0xff
mov dword [ebp - 0x134], eax
mov eax, dword [ebp + 8]
test eax, eax
je 0x46bed3
mov eax, dword [ebp - 0x110]
mov edx, dword [ebp - 0x10c]
mov ebx, eax
xor bh, 0
mov dword [ebp - 0x128], ebx
mov eax, edx
xor ah, 0
mov dword [ebp - 0x124], eax
mov ecx, dword [ebp - 0x128]
mov ebx, dword [ebp - 0x124]
mov eax, ebx
or eax, ecx
test eax, eax
je 0x46bed6
lea eax, [ebp - 0x60]
mov dword [esp + 0xc], eax
lea eax, [ebp - 0x110]
mov dword [esp + 8], eax
lea eax, [ebp + 0x98]
mov dword [esp + 4], eax
lea eax, [ebp + 8]
mov dword [esp], eax
call sym.___super_fnc__2543
lea eax, [ebp + 0x98]
mov dword [esp], eax
call sym.___super_fnc__2544
lea eax, [ebp - 0xb4]
mov dword [esp + 0x28], eax
lea eax, [ebp - 0xb0]
mov dword [esp + 0x24], eax
lea eax, [ebp - 0xac]
mov dword [esp + 0x20], eax
lea eax, [ebp - 0xa8]
mov dword [esp + 0x1c], eax
lea eax, [ebp - 0x98]
mov dword [esp + 0x18], eax
lea eax, [ebp - 0x78]
mov dword [esp + 0x14], eax
lea eax, [ebp - 0x74]
mov dword [esp + 0x10], eax
lea eax, [ebp - 0x64]
mov dword [esp + 0xc], eax
lea eax, [ebp - 0x48]
mov dword [esp + 8], eax
lea eax, [ebp - 0x44]
mov dword [esp + 4], eax
lea eax, [ebp - 0x3c]
mov dword [esp], eax
call sym.___super_fnc__2545
mov eax, dword [ebp - 0x3c]
test eax, eax
jne 0x46bcd4
lea eax, [ebp - 0x38]
mov dword [esp], eax
call sym.___super_fnc__2546
jmp 0x46c3a5
lea eax, [ebp - 0xb4]
mov dword [esp + 0x20], eax
lea eax, [ebp - 0xac]
mov dword [esp + 0x1c], eax
lea eax, [ebp - 0xa8]
mov dword [esp + 0x18], eax
lea eax, [ebp - 0x98]
mov dword [esp + 0x14], eax
lea eax, [ebp - 0x74]
mov dword [esp + 0x10], eax
lea eax, [ebp - 0x64]
mov dword [esp + 0xc], eax
lea eax, [ebp - 0x48]
mov dword [esp + 8], eax
lea eax, [ebp - 0x44]
mov dword [esp + 4], eax
lea eax, [ebp - 0x3c]
mov dword [esp], eax
call sym.___super_fnc__2547
mov eax, dword [ebp + 0xbc]
and eax, 0x20
test eax, eax
je 0x46bd8d
lea eax, [ebp - 0x70]
mov dword [esp + 0xc], eax
lea eax, [ebp - 0x3d]
mov dword [esp + 8], eax
lea eax, [ebp - 0x3c]
mov dword [esp + 4], eax
lea eax, [ebp + 0x98]
mov dword [esp], eax
call sym.___super_fnc__2548
lea eax, [ebp - 0x70]
mov dword [esp + 4], eax
lea eax, [ebp - 0x3c]
mov dword [esp], eax
call sym.___super_fnc__2549
lea eax, [ebp - 0x3c]
mov dword [esp + 4], eax
lea eax, [ebp + 0x98]
mov dword [esp], eax
call sym.___super_fnc__2550
lea eax, [ebp + 0x98]
mov dword [esp], eax
call sym.___super_fnc__2551
jmp 0x46cc7e
mov eax, dword [ebp + 0xbc]
and eax, 0x10
test eax, eax
je 0x46be07
lea eax, [ebp - 0xb4]
mov dword [esp + 0x24], eax
lea eax, [ebp - 0xb0]
mov dword [esp + 0x20], eax
lea eax, [ebp - 0xac]
mov dword [esp + 0x1c], eax
lea eax, [ebp - 0xa8]
mov dword [esp + 0x18], eax
lea eax, [ebp - 0x78]
mov dword [esp + 0x14], eax
lea eax, [ebp - 0x74]
mov dword [esp + 0x10], eax
lea eax, [ebp - 0x64]
mov dword [esp + 0xc], eax
lea eax, [ebp - 0x44]
mov dword [esp + 8], eax
lea eax, [ebp - 0x3c]
mov dword [esp + 4], eax
lea eax, [ebp + 0x6c]
mov dword [esp], eax
call sym.___super_fnc__2552
mov eax, dword [ebp - 0x3c]
mov eax, dword [eax + 0x20]
test eax, eax
je 0x46be75
lea eax, [ebp - 0x3c]
mov dword [esp], eax
call sym.___super_fnc__2553
jmp 0x46be75
lea eax, [ebp - 0xb4]
mov dword [esp + 0x30], eax
lea eax, [ebp - 0xb0]
mov dword [esp + 0x2c], eax
lea eax, [ebp - 0xac]
mov dword [esp + 0x28], eax
lea eax, [ebp - 0xa8]
mov dword [esp + 0x24], eax
lea eax, [ebp - 0x98]
mov dword [esp + 0x20], eax
lea eax, [ebp - 0x7c]
mov dword [esp + 0x1c], eax
lea eax, [ebp - 0x78]
mov dword [esp + 0x18], eax
lea eax, [ebp - 0x74]
mov dword [esp + 0x14], eax
lea eax, [ebp - 0x64]
mov dword [esp + 0x10], eax
lea eax, [ebp - 0x48]
mov dword [esp + 0xc], eax
lea eax, [ebp - 0x44]
mov dword [esp + 8], eax
lea eax, [ebp - 0x3c]
mov dword [esp + 4], eax
lea eax, [ebp + 0x6c]
mov dword [esp], eax
call sym.___super_fnc__2554
mov eax, dword [ebp - 0x3c]
mov eax, dword [eax + 0x20]
test eax, eax
jne 0x46bee7
lea eax, [ebp - 0xb4]
mov dword [esp + 0x20], eax
lea eax, [ebp - 0xb0]
mov dword [esp + 0x1c], eax
lea eax, [ebp - 0xac]
mov dword [esp + 0x18], eax
lea eax, [ebp - 0x98]
mov dword [esp + 0x14], eax
lea eax, [ebp - 0x78]
mov dword [esp + 0x10], eax
lea eax, [ebp - 0x74]
mov dword [esp + 0xc], eax
lea eax, [ebp - 0x48]
mov dword [esp + 8], eax
lea eax, [ebp - 0x44]
mov dword [esp + 4], eax
lea eax, [ebp - 0x3c]
mov dword [esp], eax
call sym.___super_fnc__2555
jmp 0x46bed7
nop
jmp 0x46bed7
nop
jmp 0x46bed7
nop
lea eax, [ebp - 0x38]
mov dword [esp], eax
call sym.___super_fnc__2556
jmp 0x46c3a5
lea eax, [ebp - 0x80]
mov dword [esp + 4], eax
lea eax, [ebp - 0x3c]
mov dword [esp], eax
call sym.___super_fnc__2557
jmp 0x46bf19
mov eax, dword [ebp - 0x80]
movzx eax, byte [eax]
cmp al, 0x5c
jne 0x46bf10
lea eax, [ebp - 0x80]
mov dword [esp], eax
call sym.___super_fnc__2558
mov eax, dword [ebp - 0x80]
add eax, 1
mov dword [ebp - 0x80], eax
mov eax, dword [ebp - 0x80]
movzx eax, byte [eax]
test al, al
jne 0x46befb
mov dword [ebp - 0x38], 0
mov eax, dword [ebp - 0x3c]
mov word [eax], 8
mov byte [ebp - 0x3d], 0
mov eax, dword [ebp - 0x3c]
lea edx, [ebp - 0x91]
mov dword [eax + 0x40], edx
mov eax, dword [ebp - 0x3c]
mov dword [eax + 0x24], 0x11
mov edx, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x3c]
add edx, 0x150
mov dword [eax + 0x44], edx
mov eax, dword [ebp - 0x3c]
mov dword [eax + 0x28], 9
mov eax, dword [ebp - 0x3c]
mov eax, dword [eax + 0x44]
add eax, 2
mov byte [eax], 5
mov eax, dword [ebp + 0x98]
mov eax, dword [eax]
test eax, eax
jns 0x46bf8d
mov byte [ebp - 0x3d], 8
mov eax, dword [ebp - 0x3c]
mov dword [eax + 0x24], 0
jmp 0x46bff4
mov eax, dword [ebp + 0xbc]
and eax, 8
test eax, eax
je 0x46bfd4
mov eax, dword [ebp - 0x3c]
mov edx, dword [ebp - 0x3c]
mov edx, dword [edx + 0x20]
sub edx, 1
movzx eax, byte [eax + edx + 0x48]
cmp al, 0x2f
je 0x46bff4
mov eax, dword [ebp - 0x3c]
mov eax, dword [eax + 0x20]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x3c]
mov edx, dword [eax + 0x20]
add edx, 1
mov dword [eax + 0x20], edx
mov edx, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x24]
add eax, edx
add eax, 0x48
mov byte [eax], 0x2f
jmp 0x46bff4
mov eax, dword [ebp + 0x98]
mov eax, dword [eax + 8]
test eax, eax
je 0x46bff0
mov dword [ebp - 0x38], 0xc
mov eax, dword [ebp - 0x3c]
mov word [eax], 9
mov byte [ebp - 0x3d], 8
mov edx, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x3c]
movzx edx, word [edx]
mov word [eax + 0x30], dx
movzx edx, byte [ebp - 0x3d]
mov eax, dword [ebp - 0x3c]
movzx edx, dl
mov word [eax + 2], dx
movzx eax, byte [ebp - 0x3d]
test al, al
jne 0x46c05c
mov eax, dword [ebp + 0x98]
mov edx, dword [eax + 0x54]
mov eax, dword [eax + 0x50]
mov ebx, eax
xor ebx, 0xffffffff
mov esi, ebx
mov eax, edx
xor eax, 0xffffffff
mov edi, eax
mov eax, edi
or eax, esi
test eax, eax
je 0x46c05c
mov eax, dword [ebp + 0x98]
mov edx, dword [eax + 0x54]
mov eax, dword [eax + 0x50]
mov ecx, dword [ebp - 0x38]
mov esi, ecx
mov edi, 0
mov ecx, dword [ebp - 0x3c]
add eax, esi
adc edx, edi
mov dword [ecx + 0x10], eax
mov dword [ecx + 0x14], edx
mov eax, dword [ebp + 0x98]
mov ecx, dword [ebp - 0x3c]
mov edx, dword [eax + 0x54]
mov eax, dword [eax + 0x50]
mov dword [ecx + 0x18], eax
mov dword [ecx + 0x1c], edx
mov eax, dword [ebp + 0x98]
mov ecx, dword [eax + 0x10]
mov ebx, dword [eax + 0x14]
mov eax, dword [ebp + 0x98]
mov edx, dword [eax + 0x1c]
mov eax, dword [eax + 0x18]
mov esi, dword [ebp - 0x3c]
add eax, ecx
adc edx, ebx
mov dword [esi + 0x38], eax
mov dword [esi + 0x3c], edx
mov eax, dword [ebp + 0x98]
mov dword [eax + 0x20], 0
mov edx, dword [ebp - 0x64]
mov ecx, dword [ebp - 0x48]
mov ebx, dword [ebp - 0x44]
mov edi, dword [ebp - 0x44]
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x128], eax
mov esi, dword [ebp - 0x44]
mov dword [ebp - 0x138], esi
mov esi, dword [ebp - 0x98]
mov dword [ebp - 0x13c], esi
mov esi, dword [ebp + 0x98]
mov dword [ebp - 0x140], esi
mov esi, dword [ebp - 0xb0]
mov eax, dword [ebp + 0x7c]
mov dword [esp + 0x90], eax
mov eax, dword [ebp + 0x9c]
mov dword [esp + 0x8c], eax
mov eax, dword [ebp + 0x58]
mov dword [esp + 0x88], eax
mov eax, dword [ebp + 0x94]
mov dword [esp + 0x84], eax
mov eax, dword [ebp + 0xb0]
mov dword [esp + 0x80], eax
mov eax, dword [ebp + 0x58]
mov dword [esp + 0x7c], eax
mov eax, dword [ebp + 0x48]
mov dword [esp + 0x78], eax
mov dword [esp + 0x74], edx
fld qword [ebp - 0x100]
fstp qword [esp + 0x6c]
mov eax, dword [ebp + 0x4c]
mov dword [esp + 0x68], eax
mov dword [esp + 0x64], ecx
mov eax, dword [ebp + 0x7c]
mov dword [esp + 0x60], eax
mov eax, dword [ebp + 0x58]
mov dword [esp + 0x5c], eax
mov dword [esp + 0x58], ebx
fld qword [ebp - 0xe0]
fstp qword [esp + 0x50]
mov dword [esp + 0x4c], edi
mov eax, dword [ebp - 0x128]
mov dword [esp + 0x48], eax
mov eax, dword [ebp + 0x70]
mov dword [esp + 0x44], eax
mov eax, dword [ebp + 0xb0]
mov dword [esp + 0x40], eax
fld qword [ebp - 0xd0]
fstp qword [esp + 0x38]
fld qword [ebp - 0xe0]
fstp qword [esp + 0x30]
mov eax, dword [ebp + 0x58]
mov dword [esp + 0x2c], eax
mov eax, dword [ebp - 0x138]
mov dword [esp + 0x28], eax
mov eax, dword [ebp + 0xb0]
mov dword [esp + 0x24], eax
mov eax, dword [ebp + 0x58]
mov dword [esp + 0x20], eax
mov eax, dword [ebp - 0x13c]
mov dword [esp + 0x1c], eax
mov eax, dword [ebp + 0x90]
mov dword [esp + 0x18], eax
fld qword [ebp - 0x118]
fstp qword [esp + 0x10]
mov eax, dword [ebp + 0x58]
mov dword [esp + 0xc], eax
mov eax, dword [ebp + 0x94]
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x140]
mov dword [esp + 4], eax
mov dword [esp], esi
call sym._putlocal
mov eax, dword [ebp + 0x98]
mov eax, dword [eax + 0x20]
test eax, eax
je 0x46c548
nop
jmp 0x46c211
nop
jmp 0x46c211
nop
jmp 0x46c211
nop
jmp 0x46c211
nop
mov eax, dword [ebp + 0x98]
mov eax, dword [eax + 0x20]
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x74]
mov edx, dword [ebp - 0xb4]
mov ecx, dword [ebp - 0xa8]
mov ebx, dword [ebp - 0xa8]
mov esi, dword [ebp - 0x98]
mov edi, dword [ebp - 0xb4]
mov dword [ebp - 0x128], edi
mov edi, dword [ebp - 0x3c]
mov dword [ebp - 0x130], edi
mov edi, dword [ebp - 0x44]
mov dword [ebp - 0x138], edi
mov edi, dword [ebp - 0xb0]
mov dword [ebp - 0x13c], edi
mov edi, dword [ebp - 0x44]
mov dword [ebp - 0x140], edi
mov edi, dword [ebp - 0x48]
mov dword [ebp - 0x144], edi
mov edi, dword [ebp - 0x64]
mov dword [ebp - 0x148], edi
mov edi, dword [ebp - 0x44]
mov dword [ebp - 0x14c], edi
mov edi, dword [ebp - 0x48]
mov dword [ebp - 0x150], edi
mov edi, dword [ebp - 0x44]
fld qword [0x592bf0]
fstp qword [esp + 0x98]
fld qword [0x592bd8]
fstp qword [esp + 0x90]
mov dword [esp + 0x8c], 5
mov dword [esp + 0x88], 1
fld qword [0x592c08]
fstp qword [esp + 0x80]
fld1
fstp qword [esp + 0x78]
mov dword [esp + 0x74], eax
mov dword [esp + 0x70], edx
mov dword [esp + 0x6c], ecx
mov dword [esp + 0x68], ebx
mov dword [esp + 0x64], 7
mov dword [esp + 0x60], 6
mov dword [esp + 0x5c], esi
fld qword [0x592c08]
fstp qword [esp + 0x54]
fld qword [0x592bf8]
fstp qword [esp + 0x4c]
mov dword [esp + 0x48], 7
mov dword [esp + 0x44], 1
mov eax, dword [ebp - 0x128]
mov dword [esp + 0x40], eax
mov eax, dword [ebp - 0x130]
mov dword [esp + 0x3c], eax
fld qword [0x592bd8]
fstp qword [esp + 0x34]
fld qword [0x592bd8]
fstp qword [esp + 0x2c]
mov eax, dword [ebp - 0x138]
mov dword [esp + 0x28], eax
mov eax, dword [ebp - 0x13c]
mov dword [esp + 0x24], eax
mov eax, dword [ebp - 0x140]
mov dword [esp + 0x20], eax
mov eax, dword [ebp - 0x144]
mov dword [esp + 0x1c], eax
mov eax, dword [ebp - 0x148]
mov dword [esp + 0x18], eax
mov eax, dword [ebp - 0x14c]
mov dword [esp + 0x14], eax
mov eax, dword [ebp - 0x150]
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], edi
fld qword [0x592be8]
fstp qword [esp + 4]
mov dword [esp], 7
call sym._ByteFree
mov eax, dword [ebp + 0x98]
mov eax, dword [eax]
and eax, 0x40
test eax, eax
je 0x46c540
mov eax, dword [ebp - 0x64]
mov edx, dword [ebp - 0xb0]
mov ecx, dword [ebp - 0x44]
mov ebx, dword [ebp - 0x48]
mov esi, dword [ebp - 0x64]
mov edi, dword [ebp - 0xb0]
mov dword [ebp - 0x128], edi
mov edi, dword [ebp - 0x74]
mov dword [ebp - 0x130], edi
mov edi, dword [ebp - 0x44]
mov dword [ebp - 0x138], edi
mov edi, dword [ebp - 0x74]
mov dword [ebp - 0x13c], edi
mov edi, dword [ebp - 0xb4]
mov dword [ebp - 0x140], edi
mov edi, dword [ebp - 0xb4]
mov dword [ebp - 0x144], edi
mov edi, dword [ebp - 0x98]
mov dword [ebp - 0x148], edi
mov edi, dword [ebp - 0x74]
mov dword [esp + 0x88], eax
mov dword [esp + 0x84], 9
mov dword [esp + 0x80], edx
mov dword [esp + 0x7c], 8
mov dword [esp + 0x78], ecx
mov dword [esp + 0x74], 1
mov dword [esp + 0x70], ebx
mov dword [esp + 0x6c], esi
mov dword [esp + 0x68], 0x97
mov dword [esp + 0x64], 9
mov dword [esp + 0x60], 7
mov dword [esp + 0x5c], 7
mov dword [esp + 0x58], 0
mov dword [esp + 0x54], 3
mov dword [esp + 0x50], 8
mov dword [esp + 0x4c], 2
mov eax, dword [ebp - 0x128]
mov dword [esp + 0x48], eax
mov dword [esp + 0x44], 9
mov eax, dword [ebp - 0x130]
mov dword [esp + 0x40], eax
mov eax, dword [ebp - 0x138]
mov dword [esp + 0x3c], eax
mov eax, dword [ebp - 0x13c]
mov dword [esp + 0x38], eax
mov eax, dword [ebp - 0x140]
mov dword [esp + 0x34], eax
mov dword [esp + 0x30], 0x34
mov eax, dword [ebp - 0x144]
mov dword [esp + 0x2c], eax
fld qword [0x592bf0]
fstp qword [esp + 0x24]
mov dword [esp + 0x20], 5
mov eax, dword [ebp - 0x148]
mov dword [esp + 0x1c], eax
fld qword [0x592c08]
fstp qword [esp + 0x14]
mov dword [esp + 0x10], edi
fld qword [0x592c00]
fstp qword [esp + 8]
mov dword [esp + 4], 2
mov dword [esp], 5
call sym._ExportWinAPI
mov dword [ebp - 0x98], eax
mov eax, dword [ebp - 0x98]
mov edx, eax
mov eax, dword [ebp + 0x98]
mov eax, dword [eax + 0x64]
mov dword [esp], eax
call edx
sub esp, 4
mov eax, dword [ebp - 0x38]
jmp 0x46de0d
mov eax, dword [ebp + 0x98]
mov eax, dword [eax]
test eax, eax
jns 0x46c573
mov eax, dword [ebp - 0x3c]
mov eax, dword [eax + 0x20]
add eax, 0xb
mov ecx, dword [ebp + 0x98]
mov edx, 0
mov dword [ecx + 0x10], eax
mov dword [ecx + 0x14], edx
jmp 0x46cc7e
mov eax, dword [ebp + 0x98]
mov edx, dword [eax + 0x14]
mov eax, dword [eax + 0x10]
mov ecx, dword [ebp - 0x3c]
mov ebx, dword [ecx + 0x20]
mov ecx, dword [ebp - 0x3c]
mov ecx, dword [ecx + 0x24]
add ecx, ebx
add ecx, 0x32
mov esi, ecx
mov edi, 0
mov ecx, dword [ebp + 0x98]
add eax, esi
adc edx, edi
mov dword [ecx + 0x10], eax
mov dword [ecx + 0x14], edx
mov eax, dword [ebp - 0x38]
test eax, eax
je 0x46cc7d
mov eax, dword [ebp + 0x98]
mov dword [eax + 0x38], 0x12345678
mov eax, dword [ebp + 0x98]
mov dword [eax + 0x3c], 0x23456789
mov eax, dword [ebp + 0x98]
mov dword [eax + 0x40], 0x34567890
mov eax, dword [ebp + 0x98]
mov eax, dword [eax + 8]
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0
je 0x46c750
mov eax, dword [ebp - 0x1c]
movzx eax, byte [eax]
test al, al
je 0x46c753
mov edx, dword [ebp - 0xac]
mov ecx, dword [ebp - 0x64]
mov eax, dword [ebp + 0x98]
add eax, 0x38
mov dword [ebp - 0x128], eax
mov edi, dword [ebp - 0x64]
mov esi, dword [ebp - 0xb4]
mov dword [ebp - 0x138], esi
mov ebx, dword [ebp - 0x64]
mov dword [ebp - 0x13c], ebx
mov esi, dword [ebp - 0x44]
mov dword [ebp - 0x140], esi
mov eax, dword [ebp - 0x1c]
movzx eax, byte [eax]
movsx esi, al
mov ebx, dword [ebp - 0x74]
mov eax, dword [ebp + 0x70]
mov dword [esp + 0x8c], eax
mov eax, dword [ebp + 0xb0]
mov dword [esp + 0x88], eax
mov dword [esp + 0x84], edx
mov dword [esp + 0x80], ecx
mov eax, dword [ebp + 0x14]
mov dword [esp + 0x7c], eax
mov eax, dword [ebp + 0x58]
mov dword [esp + 0x78], eax
mov eax, dword [ebp - 0x128]
mov dword [esp + 0x74], eax
mov dword [esp + 0x70], edi
fld qword [ebp - 0xe8]
fstp qword [esp + 0x68]
mov eax, dword [ebp - 0x138]
mov dword [esp + 0x64], eax
mov eax, dword [ebp - 0x13c]
mov dword [esp + 0x60], eax
fld qword [ebp - 0xf0]
fstp qword [esp + 0x58]
mov eax, dword [ebp + 0x24]
mov dword [esp + 0x54], eax
mov eax, dword [ebp - 0x140]
mov dword [esp + 0x50], eax
mov eax, dword [ebp + 0x48]
mov dword [esp + 0x4c], eax
mov eax, dword [ebp + 0x24]
mov dword [esp + 0x48], eax
mov eax, dword [ebp + 0x14]
mov dword [esp + 0x44], eax
mov eax, dword [ebp + 0x30]
mov dword [esp + 0x40], eax
mov eax, dword [ebp + 0x48]
mov dword [esp + 0x3c], eax
mov eax, dword [ebp + 0x48]
mov dword [esp + 0x38], eax
mov eax, dword [ebp + 0x30]
mov dword [esp + 0x34], eax
mov eax, dword [ebp + 0xb4]
mov dword [esp + 0x30], eax
mov dword [esp + 0x2c], esi
mov eax, dword [ebp + 0x48]
mov dword [esp + 0x28], eax
mov eax, dword [ebp + 0x48]
mov dword [esp + 0x24], eax
mov eax, dword [ebp + 0x50]
mov dword [esp + 0x20], eax
mov eax, dword [ebp + 0x94]
mov dword [esp + 0x1c], eax
mov eax, dword [ebp + 0xb0]
mov dword [esp + 0x18], eax
mov dword [esp + 0x14], ebx
mov eax, dword [ebp + 0x30]
mov dword [esp + 0x10], eax
fld qword [ebp - 0x120]
fstp qword [esp + 8]
fld qword [ebp - 0x120]
fstp qword [esp]
call sym._update_keys
add dword [ebp - 0x1c], 1
jmp 0x46c5e5
nop
jmp 0x46c754
nop
mov dword [ebp - 0xa8], 0
jmp 0x46c907
mov eax, dword [ebp - 0x98]
mov edx, dword [ebp - 0x48]
mov ecx, dword [ebp - 0x74]
mov ebx, dword [ebp - 0x78]
mov esi, dword [ebp - 0xac]
mov edi, dword [ebp - 0xb4]
mov dword [ebp - 0x128], edi
mov edi, dword [ebp - 0xac]
mov dword [ebp - 0x138], edi
mov edi, dword [ebp - 0x74]
mov dword [ebp - 0x13c], edi
mov edi, dword [ebp - 0xac]
mov dword [ebp - 0x140], edi
mov edi, dword [ebp - 0x78]
mov dword [ebp - 0x144], edi
mov edi, dword [ebp - 0xb4]
mov dword [ebp - 0x148], edi
mov edi, dword [ebp - 0x74]
mov dword [ebp - 0x14c], edi
mov edi, dword [ebp - 0x98]
mov dword [esp + 0x88], eax
mov dword [esp + 0x84], 7
mov dword [esp + 0x80], edx
mov dword [esp + 0x7c], 9
mov dword [esp + 0x78], ecx
mov dword [esp + 0x74], 7
mov dword [esp + 0x70], ebx
mov dword [esp + 0x6c], esi
mov dword [esp + 0x68], 0x158
mov dword [esp + 0x64], 4
mov dword [esp + 0x60], 5
mov dword [esp + 0x5c], 4
mov dword [esp + 0x58], 1
mov dword [esp + 0x54], 0
mov dword [esp + 0x50], 3
mov dword [esp + 0x4c], 8
mov eax, dword [ebp - 0x128]
mov dword [esp + 0x48], eax
mov dword [esp + 0x44], 0
mov eax, dword [ebp - 0x138]
mov dword [esp + 0x40], eax
mov eax, dword [ebp - 0x13c]
mov dword [esp + 0x3c], eax
mov eax, dword [ebp - 0x140]
mov dword [esp + 0x38], eax
mov eax, dword [ebp - 0x144]
mov dword [esp + 0x34], eax
mov dword [esp + 0x30], 0x34
mov eax, dword [ebp - 0x148]
mov dword [esp + 0x2c], eax
fld1
fstp qword [esp + 0x24]
mov dword [esp + 0x20], 9
mov eax, dword [ebp - 0x14c]
mov dword [esp + 0x1c], eax
fld qword [0x592bd0]
fstp qword [esp + 0x14]
mov dword [esp + 0x10], edi
fld1
fstp qword [esp + 8]
mov dword [esp + 4], 2
mov dword [esp], 8
call sym._ExportWinAPI
mov dword [ebp - 0xac], eax
mov eax, dword [ebp - 0xac]
call eax
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x2c], edx
mov eax, dword [ebp - 0x30]
mov edx, dword [ebp - 0x2c]
shrd eax, edx, 7
shr edx, 7
mov ecx, dword [ebp - 0xa8]
mov byte [ebp + ecx - 0xa4], al
mov eax, dword [ebp - 0xa8]
add eax, 1
mov dword [ebp - 0xa8], eax
mov eax, dword [ebp - 0xa8]
cmp eax, 0xb
jle 0x46c763
mov eax, dword [ebp - 0x3c]
mov eax, dword [eax + 4]
shr eax, 8
mov byte [ebp - 0x99], al
mov dword [ebp - 0xa8], 0
jmp 0x46cacc
mov eax, dword [ebp - 0xa8]
movzx eax, byte [ebp + eax - 0xa4]
movsx edx, al
mov ecx, dword [ebp - 0xa8]
mov ebx, dword [ebp - 0xac]
mov esi, dword [ebp - 0x78]
mov edi, dword [ebp - 0xb4]
mov eax, dword [ebp - 0xb0]
mov dword [ebp - 0x128], eax
mov eax, dword [ebp - 0xa8]
mov dword [ebp - 0x138], eax
mov eax, dword [ebp - 0x64]
mov dword [ebp - 0x13c], eax
mov eax, dword [ebp + 0x98]
add eax, 0x38
mov dword [ebp - 0x140], eax
mov eax, dword [ebp - 0x44]
mov dword [ebp - 0x144], eax
mov eax, dword [ebp - 0xa8]
mov dword [ebp - 0x148], eax
mov eax, dword [ebp + 0x48]
mov dword [esp + 0x94], eax
mov dword [esp + 0x90], edx
fld qword [ebp - 0xd8]
fstp qword [esp + 0x88]
mov dword [esp + 0x84], ecx
mov eax, dword [ebp + 0x90]
mov dword [esp + 0x80], eax
mov dword [esp + 0x7c], ebx
mov eax, dword [ebp + 0x3c]
mov dword [esp + 0x78], eax
mov dword [esp + 0x74], esi
mov eax, dword [ebp + 0x58]
mov dword [esp + 0x70], eax
mov dword [esp + 0x6c], edi
mov eax, dword [ebp + 0x58]
mov dword [esp + 0x68], eax
mov eax, dword [ebp - 0x128]
mov dword [esp + 0x64], eax
fld qword [ebp - 0xc8]
fstp qword [esp + 0x5c]
fld qword [ebp - 0xc0]
fstp qword [esp + 0x54]
mov eax, dword [ebp + 0x4c]
mov dword [esp + 0x50], eax
mov eax, dword [ebp - 0x138]
mov dword [esp + 0x4c], eax
mov eax, dword [ebp + 0xb4]
mov dword [esp + 0x48], eax
mov eax, dword [ebp + 0xb0]
mov dword [esp + 0x44], eax
mov eax, dword [ebp + 0x50]
mov dword [esp + 0x40], eax
mov eax, dword [ebp + 0x4c]
mov dword [esp + 0x3c], eax
fld qword [ebp - 0xd0]
fstp qword [esp + 0x34]
fld qword [ebp - 0x100]
fstp qword [esp + 0x2c]
mov eax, dword [ebp + 0x58]
mov dword [esp + 0x28], eax
mov eax, dword [ebp - 0x13c]
mov dword [esp + 0x24], eax
fld qword [ebp - 0xe0]
fstp qword [esp + 0x1c]
mov eax, dword [ebp + 0xb0]
mov dword [esp + 0x18], eax
mov eax, dword [ebp - 0x140]
mov dword [esp + 0x14], eax
mov eax, dword [ebp + 0x3c]
mov dword [esp + 0x10], eax
mov eax, dword [ebp + 0x24]
mov dword [esp + 0xc], eax
mov eax, dword [ebp + 0x50]
mov dword [esp + 8], eax
mov eax, dword [ebp + 0x14]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x144]
mov dword [esp], eax
call sym._zencode
mov esi, dword [ebp - 0x148]
mov byte [ebp + esi - 0xa4], al
mov eax, dword [ebp - 0xa8]
add eax, 1
mov dword [ebp - 0xa8], eax
mov eax, dword [ebp - 0xa8]
cmp eax, 0xb
jle 0x46c934
mov eax, dword [ebp - 0x74]
mov edx, dword [ebp - 0x48]
mov ecx, dword [ebp - 0x78]
mov ebx, dword [ebp - 0xa8]
mov esi, dword [ebp + 0x98]
mov edi, dword [ebp - 0x98]
mov dword [ebp - 0x128], edi
mov edi, dword [ebp - 0x98]
mov dword [ebp - 0x138], edi
mov edi, dword [ebp - 0x64]
mov dword [ebp - 0x13c], edi
mov edi, dword [ebp - 0x44]
mov dword [ebp - 0x140], edi
mov edi, dword [ebp - 0x64]
mov dword [esp + 0x98], eax
mov dword [esp + 0x94], edx
mov eax, dword [ebp + 0x4c]
mov dword [esp + 0x90], eax
lea eax, [ebp - 0xa4]
mov dword [esp + 0x8c], eax
mov dword [esp + 0x88], ecx
mov eax, dword [ebp + 0x70]
mov dword [esp + 0x84], eax
mov eax, dword [ebp + 0x48]
mov dword [esp + 0x80], eax
mov eax, dword [ebp + 0x48]
mov dword [esp + 0x7c], eax
mov dword [esp + 0x78], ebx
mov dword [esp + 0x74], esi
mov eax, dword [ebp + 0xb0]
mov dword [esp + 0x70], eax
fld qword [ebp - 0xd0]
fstp qword [esp + 0x68]
mov eax, dword [ebp + 0x3c]
mov dword [esp + 0x64], eax
mov eax, dword [ebp + 0x94]
mov dword [esp + 0x60], eax
mov eax, dword [ebp + 0x24]
mov dword [esp + 0x5c], eax
fld qword [ebp - 0xe8]
fstp qword [esp + 0x54]
mov dword [esp + 0x50], 0xc
mov eax, dword [ebp - 0x128]
mov dword [esp + 0x4c], eax
mov eax, dword [ebp + 0x30]
mov dword [esp + 0x48], eax
mov eax, dword [ebp + 0x90]
mov dword [esp + 0x44], eax
mov eax, dword [ebp + 0x48]
mov dword [esp + 0x40], eax
mov eax, dword [ebp + 0xb8]
mov dword [esp + 0x3c], eax
mov eax, dword [ebp - 0x138]
mov dword [esp + 0x38], eax
fld qword [ebp - 0xc0]
fstp qword [esp + 0x30]
mov eax, dword [ebp + 0x48]
mov dword [esp + 0x2c], eax
mov eax, dword [ebp - 0x13c]
mov dword [esp + 0x28], eax
fld qword [ebp - 0x100]
fstp qword [esp + 0x20]
fld qword [ebp - 0x120]
fstp qword [esp + 0x18]
mov eax, dword [ebp - 0x140]
mov dword [esp + 0x14], eax
fld qword [ebp - 0xc0]
fstp qword [esp + 0xc]
mov dword [esp + 8], edi
mov eax, dword [ebp + 0x58]
mov dword [esp + 4], eax
mov eax, dword [ebp + 0x58]
mov dword [esp], eax
call sym._writeDestination
mov eax, dword [ebp + 0x98]
mov eax, dword [eax + 0x20]
test eax, eax
jne 0x46c207
mov eax, dword [ebp + 0x98]
mov edx, dword [eax + 0x14]
mov eax, dword [eax + 0x10]
mov ecx, dword [ebp + 0x98]
add eax, 0xc
adc edx, 0
mov dword [ecx + 0x10], eax
mov dword [ecx + 0x14], edx
mov eax, dword [ebp + 0x98]
mov edx, dword [eax]
mov eax, dword [ebp + 0x98]
or edx, 0x10
mov dword [eax], edx
jmp 0x46cc7e
nop
mov eax, dword [ebp + 0x98]
mov eax, dword [eax + 0x64]
test eax, eax
je 0x46d0e3
movzx eax, byte [ebp - 0x3d]
cmp al, 8
jne 0x46ce47
mov edx, dword [ebp - 0x98]
mov ecx, dword [ebp - 0xb4]
mov ebx, dword [ebp - 0x98]
mov esi, dword [ebp - 0xb4]
mov edi, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x78]
mov dword [ebp - 0x128], eax
mov eax, dword [ebp - 0x78]
mov dword [ebp - 0x138], eax
mov eax, dword [ebp - 0x44]
mov dword [ebp - 0x13c], eax
mov eax, dword [ebp - 0x98]
mov dword [ebp - 0x140], eax
mov eax, dword [ebp - 0x78]
mov dword [ebp - 0x144], eax
mov eax, dword [ebp + 0x98]
mov dword [ebp - 0x148], eax
mov eax, dword [ebp - 0x98]
mov dword [ebp - 0x14c], eax
mov eax, dword [ebp - 0x98]
mov dword [ebp - 0x150], eax
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x154], eax
mov eax, dword [ebp + 0x70]
mov dword [esp + 0xa0], eax
mov dword [esp + 0x9c], edx
mov eax, dword [ebp + 0x30]
mov dword [esp + 0x98], eax
mov eax, dword [ebp + 0x48]
mov dword [esp + 0x94], eax
mov dword [esp + 0x90], ecx
mov eax, dword [ebp + 0x94]
mov dword [esp + 0x8c], eax
fld qword [ebp - 0xd8]
fstp qword [esp + 0x84]
mov dword [esp + 0x80], ebx
fld qword [ebp - 0xe0]
fstp qword [esp + 0x78]
mov dword [esp + 0x74], esi
mov dword [esp + 0x70], edi
fld qword [ebp - 0xf0]
fstp qword [esp + 0x68]
mov eax, dword [ebp + 0x4c]
mov dword [esp + 0x64], eax
mov eax, dword [ebp - 0x128]
mov dword [esp + 0x60], eax
mov eax, dword [ebp + 0xb0]
mov dword [esp + 0x5c], eax
fld qword [ebp - 0x118]
fstp qword [esp + 0x54]
mov eax, dword [ebp - 0x138]
mov dword [esp + 0x50], eax
fld qword [ebp - 0xd8]
fstp qword [esp + 0x48]
fld qword [ebp - 0x100]
fstp qword [esp + 0x40]
mov eax, dword [ebp + 0x9c]
mov dword [esp + 0x3c], eax
mov eax, dword [ebp - 0x13c]
mov dword [esp + 0x38], eax
mov eax, dword [ebp - 0x140]
mov dword [esp + 0x34], eax
mov eax, dword [ebp - 0x144]
mov dword [esp + 0x30], eax
mov eax, dword [ebp - 0x148]
mov dword [esp + 0x2c], eax
mov eax, dword [ebp + 0xb8]
mov dword [esp + 0x28], eax
fld qword [ebp - 0xc8]
fstp qword [esp + 0x20]
fld qword [ebp - 0xf8]
fstp qword [esp + 0x18]
mov eax, dword [ebp - 0x14c]
mov dword [esp + 0x14], eax
mov eax, dword [ebp + 0x48]
mov dword [esp + 0x10], eax
fld qword [ebp - 0xc0]
fstp qword [esp + 8]
mov eax, dword [ebp - 0x150]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x154]
mov dword [esp], eax
call sym._ideflate
jmp 0x46cf7b
mov eax, dword [ebp - 0x78]
mov edx, dword [ebp - 0x78]
mov ecx, dword [ebp + 0x98]
mov ebx, dword [ebp - 0xac]
mov esi, dword [ebp - 0x74]
mov edi, dword [ebp - 0x78]
mov dword [ebp - 0x128], edi
mov edi, dword [ebp - 0x98]
mov dword [ebp - 0x138], edi
mov edi, dword [ebp - 0xb4]
mov dword [ebp - 0x13c], edi
mov edi, dword [ebp - 0xac]
mov dword [ebp - 0x140], edi
mov edi, dword [ebp - 0xa8]
mov dword [esp + 0x80], eax
mov dword [esp + 0x7c], edx
mov dword [esp + 0x78], ecx
mov dword [esp + 0x74], ebx
mov eax, dword [ebp + 0x54]
mov dword [esp + 0x70], eax
mov eax, dword [ebp + 0x4c]
mov dword [esp + 0x6c], eax
mov eax, dword [ebp + 0x30]
mov dword [esp + 0x68], eax
mov eax, dword [ebp + 0x90]
mov dword [esp + 0x64], eax
fld qword [ebp - 0xf8]
fstp qword [esp + 0x5c]
mov eax, dword [ebp + 0x48]
mov dword [esp + 0x58], eax
mov eax, dword [ebp + 0xb0]
mov dword [esp + 0x54], eax
mov eax, dword [ebp + 0x48]
mov dword [esp + 0x50], eax
mov eax, dword [ebp + 0x58]
mov dword [esp + 0x4c], eax
mov eax, dword [ebp + 0x48]
mov dword [esp + 0x48], eax
mov eax, dword [ebp + 0x58]
mov dword [esp + 0x44], eax
mov dword [esp + 0x40], esi
mov eax, dword [ebp + 0x58]
mov dword [esp + 0x3c], eax
mov eax, dword [ebp + 0x94]
mov dword [esp + 0x38], eax
mov eax, dword [ebp - 0x128]
mov dword [esp + 0x34], eax
mov eax, dword [ebp + 0x54]
mov dword [esp + 0x30], eax
mov eax, dword [ebp - 0x138]
mov dword [esp + 0x2c], eax
fld qword [ebp - 0xf0]
fstp qword [esp + 0x24]
mov eax, dword [ebp - 0x13c]
mov dword [esp + 0x20], eax
mov eax, dword [ebp + 0x50]
mov dword [esp + 0x1c], eax
mov eax, dword [ebp - 0x140]
mov dword [esp + 0x18], eax
mov eax, dword [ebp + 0x48]
mov dword [esp + 0x14], eax
mov eax, dword [ebp + 0x70]
mov dword [esp + 0x10], eax
mov eax, dword [ebp + 0x7c]
mov dword [esp + 0xc], eax
mov eax, dword [ebp + 0x70]
mov dword [esp + 8], eax
mov eax, dword [ebp + 0xb4]
mov dword [esp + 4], eax
mov dword [esp], edi
call sym._istore
mov eax, dword [ebp + 0x98]
mov eax, dword [eax + 0x20]
test eax, eax
jne 0x46c20a
mov eax, dword [ebp + 0x98]
mov edx, dword [eax]
mov eax, dword [ebp + 0x98]
and edx, 0xffffffef
mov dword [eax], edx
mov edx, dword [ebp + 0x98]
mov ecx, dword [ebp - 0x64]
mov eax, dword [ebp - 0xb0]
mov dword [ebp - 0x128], eax
mov edi, dword [ebp - 0xac]
mov esi, dword [ebp - 0x44]
mov ebx, dword [ebp - 0x98]
fld qword [ebp - 0x118]
fstp qword [esp + 0x84]
mov eax, dword [ebp + 0x48]
mov dword [esp + 0x80], eax
mov eax, dword [ebp + 0xb0]
mov dword [esp + 0x7c], eax
mov eax, dword [ebp + 0x58]
mov dword [esp + 0x78], eax
mov eax, dword [ebp + 0x50]
mov dword [esp + 0x74], eax
mov eax, dword [ebp + 0x3c]
mov dword [esp + 0x70], eax
mov eax, dword [ebp + 0x70]
mov dword [esp + 0x6c], eax
mov eax, dword [ebp + 0xb0]
mov dword [esp + 0x68], eax
mov eax, dword [ebp + 0x30]
mov dword [esp + 0x64], eax
mov eax, dword [ebp + 0x58]
mov dword [esp + 0x60], eax
mov dword [esp + 0x5c], edx
mov eax, dword [ebp + 0x30]
mov dword [esp + 0x58], eax
mov dword [esp + 0x54], ecx
mov eax, dword [ebp + 0xb0]
mov dword [esp + 0x50], eax
mov eax, dword [ebp + 0xb0]
mov dword [esp + 0x4c], eax
mov eax, dword [ebp - 0x128]
mov dword [esp + 0x48], eax
mov eax, dword [ebp + 0x9c]
mov dword [esp + 0x44], eax
mov eax, dword [ebp + 0xb0]
mov dword [esp + 0x40], eax
mov dword [esp + 0x3c], edi
fld qword [ebp - 0xe8]
fstp qword [esp + 0x34]
mov eax, dword [ebp + 0x48]
mov dword [esp + 0x30], eax
mov eax, dword [ebp + 0x30]
mov dword [esp + 0x2c], eax
mov eax, dword [ebp + 0x30]
mov dword [esp + 0x28], eax
mov eax, dword [ebp + 0x50]
mov dword [esp + 0x24], eax
mov dword [esp + 0x20], esi
mov eax, dword [ebp + 0x48]
mov dword [esp + 0x1c], eax
mov eax, dword [ebp + 0xb0]
mov dword [esp + 0x18], eax
fld qword [ebp - 0x120]
fstp qword [esp + 0x10]
fld qword [ebp - 0x118]
fstp qword [esp + 8]
mov dword [esp + 4], ebx
mov eax, dword [ebp + 0x4c]
mov dword [esp], eax
call sym._closeSource
mov eax, dword [ebp + 0x98]
mov ecx, dword [eax + 0x10]
mov ebx, dword [eax + 0x14]
mov eax, dword [ebp + 0x98]
mov edx, dword [eax + 0x7c]
mov eax, dword [eax + 0x78]
mov esi, dword [ebp + 0x98]
add eax, ecx
adc edx, ebx
mov dword [esi + 0x10], eax
mov dword [esi + 0x14], edx
mov eax, dword [ebp + 0x98]
mov eax, dword [eax]
test eax, eax
jns 0x46d6be
mov eax, dword [ebp + 0x98]
mov edx, dword [eax]
mov eax, dword [ebp + 0x98]
or edx, 8
mov dword [eax], edx
mov eax, dword [ebp + 0xbc]
and eax, 0x20
test eax, eax
jne 0x46de08
mov edx, dword [ebp - 0xac]
mov ecx, dword [ebp - 0x98]
mov ebx, dword [ebp - 0x48]
mov esi, dword [ebp - 0xb4]
mov eax, dword [ebp - 0x74]
mov dword [ebp - 0x128], eax
mov edi, dword [ebp - 0x44]
mov dword [ebp - 0x130], edi
mov edi, dword [ebp - 0xb0]
mov dword [ebp - 0x138], edi
mov eax, dword [ebp + 0x98]
mov edi, dword [eax + 0x60]
mov dword [ebp - 0x13c], edi
mov edi, dword [ebp - 0x44]
mov dword [ebp - 0x140], edi
mov edi, dword [ebp - 0xb4]
mov dword [ebp - 0x144], edi
mov edi, dword [ebp + 0x98]
mov eax, dword [ebp + 0x58]
mov dword [esp + 0x9c], eax
mov dword [esp + 0x98], edx
mov dword [esp + 0x94], ecx
mov dword [esp + 0x90], ebx
mov dword [esp + 0x8c], esi
mov eax, dword [ebp + 0x58]
mov dword [esp + 0x88], eax
mov eax, dword [ebp + 0x94]
mov dword [esp + 0x84], eax
mov eax, dword [ebp - 0x128]
mov dword [esp + 0x80], eax
mov eax, dword [ebp + 0x48]
mov dword [esp + 0x7c], eax
fld qword [ebp - 0xd0]
fstp qword [esp + 0x74]
fld qword [ebp - 0x108]
fstp qword [esp + 0x6c]
mov eax, dword [ebp + 0xb8]
mov dword [esp + 0x68], eax
mov eax, dword [ebp - 0x130]
mov dword [esp + 0x64], eax
mov eax, dword [ebp + 0xb0]
mov dword [esp + 0x60], eax
mov eax, dword [ebp + 0x50]
mov dword [esp + 0x5c], eax
mov eax, dword [ebp + 0x58]
mov dword [esp + 0x58], eax
fld qword [ebp - 0xf0]
fstp qword [esp + 0x50]
fld qword [ebp - 0xe8]
fstp qword [esp + 0x48]
mov eax, dword [ebp - 0x138]
mov dword [esp + 0x44], eax
fld qword [ebp - 0x108]
fstp qword [esp + 0x3c]
mov eax, dword [ebp + 0x58]
mov dword [esp + 0x38], eax
mov eax, dword [ebp + 0x48]
mov dword [esp + 0x34], eax
mov eax, dword [ebp - 0x13c]
mov dword [esp + 0x30], eax
fld qword [ebp - 0x108]
fstp qword [esp + 0x28]
mov eax, dword [ebp - 0x140]
mov dword [esp + 0x24], eax
mov eax, dword [ebp - 0x144]
mov dword [esp + 0x20], eax
mov eax, dword [ebp + 0xb0]
mov dword [esp + 0x1c], eax
mov eax, dword [ebp + 0x48]
mov dword [esp + 0x18], eax
mov eax, dword [ebp + 0xb0]
mov dword [esp + 0x14], eax
fld qword [ebp - 0xe0]
fstp qword [esp + 0xc]
fld qword [ebp - 0xc0]
fstp qword [esp + 4]
mov dword [esp], edi
call sym._writeDestShort
mov edx, dword [ebp - 0xb0]
mov ecx, dword [ebp - 0x78]
mov eax, dword [ebp - 0x78]
mov dword [ebp - 0x128], eax
mov esi, dword [ebp - 0xac]
mov dword [ebp - 0x130], esi
mov ebx, dword [ebp - 0xb4]
mov dword [ebp - 0x138], ebx
mov eax, dword [ebp + 0x98]
mov eax, dword [eax + 0x60]
shr eax, 0x10
mov dword [ebp - 0x13c], eax
mov edi, dword [ebp - 0x44]
mov esi, dword [ebp - 0xa8]
mov ebx, dword [ebp + 0x98]
mov eax, dword [ebp + 0xb0]
mov dword [esp + 0x9c], eax
mov eax, dword [ebp + 0x7c]
mov dword [esp + 0x98], eax
mov eax, dword [ebp + 0x70]
mov dword [esp + 0x94], eax
mov eax, dword [ebp + 0x30]
mov dword [esp + 0x90], eax
mov dword [esp + 0x8c], edx
mov eax, dword [ebp + 0xb0]
mov dword [esp + 0x88], eax
mov dword [esp + 0x84], ecx
mov eax, dword [ebp + 0x24]
mov dword [esp + 0x80], eax
mov eax, dword [ebp + 0x48]
mov dword [esp + 0x7c], eax
fld qword [ebp - 0xe8]
fstp qword [esp + 0x74]
fld qword [ebp - 0xc0]
fstp qword [esp + 0x6c]
mov ecx, dword [ebp - 0x128]
mov dword [esp + 0x68], ecx
mov ecx, dword [ebp - 0x130]
mov dword [esp + 0x64], ecx
mov eax, dword [ebp + 0x48]
mov dword [esp + 0x60], eax
mov ecx, dword [ebp - 0x138]
mov dword [esp + 0x5c], ecx
mov eax, dword [ebp + 0x58]
mov dword [esp + 0x58], eax
fld qword [ebp - 0xe8]
fstp qword [esp + 0x50]
fld qword [ebp - 0xf0]
fstp qword [esp + 0x48]
mov eax, dword [ebp + 0x14]
mov dword [esp + 0x44], eax
fld qword [ebp - 0xf0]
fstp qword [esp + 0x3c]
mov eax, dword [ebp + 0xb0]
mov dword [esp + 0x38], eax
mov eax, dword [ebp + 0xb0]
mov dword [esp + 0x34], eax
mov eax, dword [ebp - 0x13c]
mov dword [esp + 0x30], eax
fld qword [ebp - 0xf0]
fstp qword [esp + 0x28]
mov dword [esp + 0x24], edi
mov dword [esp + 0x20], esi
mov eax, dword [ebp + 0xb0]
mov dword [esp + 0x1c], eax
mov eax, dword [ebp + 0x48]
mov dword [esp + 0x18], eax
mov eax, dword [ebp + 0x48]
mov dword [esp + 0x14], eax
fld qword [ebp - 0xf8]
fstp qword [esp + 0xc]
fld qword [ebp - 0xe0]
fstp qword [esp + 4]
mov dword [esp], ebx
call sym._writeDestShort
mov ecx, dword [ebp - 0x64]
mov eax, dword [ebp - 0x78]
mov dword [ebp - 0x128], eax
mov esi, dword [ebp - 0xb0]
mov dword [ebp - 0x130], esi
mov edi, dword [ebp - 0xb0]
mov eax, dword [ebp + 0x98]
mov edx, dword [eax + 0x5c]
mov eax, dword [eax + 0x58]
mov dword [ebp - 0x138], eax
mov esi, dword [ebp - 0x74]
mov ebx, dword [ebp - 0x78]
mov edx, dword [ebp + 0x98]
mov eax, dword [ebp + 0x58]
mov dword [esp + 0x9c], eax
mov dword [esp + 0x98], ecx
mov eax, dword [ebp + 0x24]
mov dword [esp + 0x94], eax
mov eax, dword [ebp - 0x128]
mov dword [esp + 0x90], eax
mov eax, dword [ebp - 0x130]
mov dword [esp + 0x8c], eax
mov eax, dword [ebp + 0xb0]
mov dword [esp + 0x88], eax
mov dword [esp + 0x84], edi
mov eax, dword [ebp + 0x90]
mov dword [esp + 0x80], eax
mov eax, dword [ebp + 0xb0]
mov dword [esp + 0x7c], eax
fld qword [ebp - 0xe8]
fstp qword [esp + 0x74]
fld qword [ebp - 0xd0]
fstp qword [esp + 0x6c]
mov eax, dword [ebp + 0x94]
mov dword [esp + 0x68], eax
mov eax, dword [ebp + 0x4c]
mov dword [esp + 0x64], eax
mov eax, dword [ebp + 0xb0]
mov dword [esp + 0x60], eax
mov eax, dword [ebp + 0x50]
mov dword [esp + 0x5c], eax
mov eax, dword [ebp + 0x58]
mov dword [esp + 0x58], eax
fld qword [ebp - 0xe8]
fstp qword [esp + 0x50]
fld qword [ebp - 0x118]
fstp qword [esp + 0x48]
mov eax, dword [ebp + 0xb8]
mov dword [esp + 0x44], eax
fld qword [ebp - 0xd0]
fstp qword [esp + 0x3c]
mov eax, dword [ebp + 0xb0]
mov dword [esp + 0x38], eax
mov eax, dword [ebp + 0x48]
mov dword [esp + 0x34], eax
mov eax, dword [ebp - 0x138]
mov dword [esp + 0x30], eax
fld qword [ebp - 0xc0]
fstp qword [esp + 0x28]
mov dword [esp + 0x24], esi
mov dword [esp + 0x20], ebx
mov eax, dword [ebp + 0x58]
mov dword [esp + 0x1c], eax
mov eax, dword [ebp + 0x48]
mov dword [esp + 0x18], eax
mov eax, dword [ebp + 0x58]
mov dword [esp + 0x14], eax
fld qword [ebp - 0xf8]
fstp qword [esp + 0xc]
fld qword [ebp - 0xf8]
fstp qword [esp + 4]
mov dword [esp], edx
call sym._writeDestShort
mov ebx, dword [ebp - 0x74]
mov eax, dword [ebp + 0x98]
mov edx, dword [eax + 0x5c]
mov eax, dword [eax + 0x58]
shrd eax, edx, 0x10
shr edx, 0x10
mov edi, eax
mov ecx, dword [ebp - 0x98]
mov edx, dword [ebp - 0xb0]
mov eax, dword [ebp + 0x98]
mov esi, dword [ebp + 0x58]
mov dword [esp + 0x9c], esi
mov dword [esp + 0x98], ebx
mov ebx, dword [ebp + 0x24]
mov dword [esp + 0x94], ebx
mov ebx, dword [ebp + 0x30]
mov dword [esp + 0x90], ebx
mov ebx, dword [ebp + 0x14]
mov dword [esp + 0x8c], ebx
mov ebx, dword [ebp + 0x58]
mov dword [esp + 0x88], ebx
mov ebx, dword [ebp + 0x14]
mov dword [esp + 0x84], ebx
mov ebx, dword [ebp + 0x4c]
mov dword [esp + 0x80], ebx
mov ebx, dword [ebp + 0xb0]
mov dword [esp + 0x7c], ebx
fld qword [ebp - 0x118]
fstp qword [esp + 0x74]
fld qword [ebp - 0xf0]
fstp qword [esp + 0x6c]
mov ebx, dword [ebp + 0x94]
mov dword [esp + 0x68], ebx
mov ebx, dword [ebp + 0x7c]
mov dword [esp + 0x64], ebx
mov ebx, dword [ebp + 0xb0]
mov dword [esp + 0x60], ebx
mov ebx, dword [ebp + 0x9c]
mov dword [esp + 0x5c], ebx
mov ebx, dword [ebp + 0x48]
mov dword [esp + 0x58], ebx
fld qword [ebp - 0xe8]
fstp qword [esp + 0x50]
fld qword [ebp - 0xd0]
fstp qword [esp + 0x48]
mov ebx, dword [ebp + 0x9c]
mov dword [esp + 0x44], ebx
fld qword [ebp - 0xe8]
fstp qword [esp + 0x3c]
mov ebx, dword [ebp + 0x48]
mov dword [esp + 0x38], ebx
mov ebx, dword [ebp + 0xb0]
mov dword [esp + 0x34], ebx
mov dword [esp + 0x30], edi
fld qword [ebp - 0xd0]
fstp qword [esp + 0x28]
mov dword [esp + 0x24], ecx
mov dword [esp + 0x20], edx
mov edx, dword [ebp + 0xb0]
mov dword [esp + 0x1c], edx
mov edx, dword [ebp + 0x58]
mov dword [esp + 0x18], edx
mov edx, dword [ebp + 0x58]
mov dword [esp + 0x14], edx
fld qword [ebp - 0xc0]
fstp qword [esp + 0xc]
fld qword [ebp - 0xf0]
fstp qword [esp + 4]
mov dword [esp], eax
call sym._writeDestShort
mov eax, dword [ebp + 0x98]
mov eax, dword [eax + 0x20]
test eax, eax
je 0x46de08
jmp 0x46c211
mov eax, dword [ebp - 0x3c]
mov ecx, dword [eax + 0x10]
mov ebx, dword [eax + 0x14]
mov eax, dword [ebp + 0x98]
mov edx, dword [eax + 0x7c]
mov eax, dword [eax + 0x78]
mov esi, dword [ebp - 0x38]
mov edi, 0
add eax, esi
adc edx, edi
mov edi, ecx
xor edi, eax
mov dword [ebp - 0x130], edi
mov edi, ebx
xor edi, edx
mov dword [ebp - 0x12c], edi
mov esi, dword [ebp - 0x130]
mov edi, dword [ebp - 0x12c]
mov eax, esi
or eax, edi
test eax, eax
sete al
mov byte [ebp - 0x31], al
mov edx, dword [ebp + 0x98]
mov eax, dword [ebp - 0x3c]
mov edx, dword [edx + 0x60]
mov dword [eax + 8], edx
mov eax, dword [ebp + 0x98]
mov edx, dword [eax + 0x7c]
mov eax, dword [eax + 0x78]
mov ecx, dword [ebp - 0x38]
mov esi, ecx
mov edi, 0
mov ecx, dword [ebp - 0x3c]
add eax, esi
adc edx, edi
mov dword [ecx + 0x10], eax
mov dword [ecx + 0x14], edx
mov eax, dword [ebp + 0x98]
mov ecx, dword [ebp - 0x3c]
mov edx, dword [eax + 0x54]
mov eax, dword [eax + 0x50]
mov dword [ecx + 0x18], eax
mov dword [ecx + 0x1c], edx
mov eax, dword [ebp + 0x98]
mov eax, dword [eax]
and eax, 4
test eax, eax
je 0x46dbfd
mov eax, dword [ebp - 0x38]
test eax, eax
jne 0x46dc00
movzx edx, byte [ebp - 0x3d]
mov eax, dword [ebp - 0x3c]
movzx edx, dl
mov word [eax + 2], dx
mov eax, dword [ebp - 0x3c]
movzx eax, word [eax]
movzx eax, ax
and eax, 1
test eax, eax
jne 0x46d79d
mov eax, dword [ebp - 0x3c]
movzx edx, word [eax]
mov eax, dword [ebp - 0x3c]
and edx, 0xfffffff7
mov word [eax], dx
mov edx, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x3c]
movzx edx, word [edx]
mov word [eax + 0x30], dx
mov eax, dword [ebp - 0x3c]
mov edx, dword [eax + 0x3c]
mov eax, dword [eax + 0x38]
mov ecx, dword [ebp + 0x98]
mov ebx, dword [ecx + 0x1c]
mov ecx, dword [ecx + 0x18]
sub eax, ecx
sbb edx, ebx
mov esi, eax
mov edi, edx
mov eax, dword [ebp - 0xb0]
mov dword [ebp - 0x128], eax
mov ebx, dword [ebp - 0xa8]
mov dword [ebp - 0x130], ebx
mov ecx, dword [ebp - 0xb0]
mov dword [ebp - 0x138], ecx
mov ebx, dword [ebp + 0x98]
mov ecx, dword [ebp - 0x64]
mov edx, dword [ebp - 0xb0]
mov eax, dword [ebp + 0x4c]
mov dword [esp + 0xa8], eax
mov eax, dword [ebp + 0x14]
mov dword [esp + 0xa4], eax
mov dword [esp + 0x9c], esi
mov dword [esp + 0xa0], edi
mov eax, dword [ebp + 0x58]
mov dword [esp + 0x98], eax
fld qword [ebp - 0xf0]
fstp qword [esp + 0x90]
mov eax, dword [ebp + 0x94]
mov dword [esp + 0x8c], eax
mov eax, dword [ebp - 0x128]
mov dword [esp + 0x88], eax
mov eax, dword [ebp + 0x48]
mov dword [esp + 0x84], eax
fld qword [ebp - 0x120]
fstp qword [esp + 0x7c]
mov eax, dword [ebp + 0x54]
mov dword [esp + 0x78], eax
fld qword [ebp - 0x118]
fstp qword [esp + 0x70]
mov eax, dword [ebp + 0x9c]
mov dword [esp + 0x6c], eax
mov eax, dword [ebp - 0x130]
mov dword [esp + 0x68], eax
fld qword [ebp - 0xc0]
fstp qword [esp + 0x60]
mov eax, dword [ebp + 0x30]
mov dword [esp + 0x5c], eax
fld qword [ebp - 0x108]
fstp qword [esp + 0x54]
mov eax, dword [ebp + 0x9c]
mov dword [esp + 0x50], eax
fld qword [ebp - 0xe8]
fstp qword [esp + 0x48]
fld qword [ebp - 0x100]
fstp qword [esp + 0x40]
mov eax, dword [ebp - 0x138]
mov dword [esp + 0x3c], eax
mov eax, dword [ebp + 0x3c]
mov dword [esp + 0x38], eax
mov dword [esp + 0x34], ebx
mov eax, dword [ebp + 0x58]
mov dword [esp + 0x30], eax
fld qword [ebp - 0xd0]
fstp qword [esp + 0x28]
mov dword [esp + 0x24], ecx
mov eax, dword [ebp + 0x54]
mov dword [esp + 0x20], eax
mov dword [esp + 0x1c], edx
fld qword [ebp - 0xe0]
fstp qword [esp + 0x14]
mov eax, dword [ebp + 0x58]
mov dword [esp + 0x10], eax
mov eax, dword [ebp + 0x58]
mov dword [esp + 0xc], eax
fld qword [ebp - 0xe0]
fstp qword [esp + 4]
mov eax, dword [ebp + 0x7c]
mov dword [esp], eax
call sym._seekDestination
mov dword [ebp - 0xb0], eax
mov eax, dword [ebp - 0xb0]
test eax, eax
jne 0x46d93e
nop
mov dword [ebp - 0x38], 0x10
jmp 0x46c21d
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x128], eax
mov edi, dword [ebp - 0x98]
mov esi, dword [ebp - 0x3c]
mov ebx, dword [ebp - 0xac]
mov ecx, dword [ebp + 0x98]
mov edx, dword [ebp - 0xb4]
mov eax, dword [ebp + 0x7c]
mov dword [esp + 0x90], eax
mov eax, dword [ebp + 0xb4]
mov dword [esp + 0x8c], eax
mov eax, dword [ebp + 0x58]
mov dword [esp + 0x88], eax
mov eax, dword [ebp - 0x128]
mov dword [esp + 0x84], eax
mov eax, dword [ebp + 0x58]
mov dword [esp + 0x80], eax
mov eax, dword [ebp + 0x58]
mov dword [esp + 0x7c], eax
mov eax, dword [ebp + 0x48]
mov dword [esp + 0x78], eax
mov eax, dword [ebp + 0x18]
mov dword [esp + 0x74], eax
fld qword [ebp - 0x120]
fstp qword [esp + 0x6c]
mov dword [esp + 0x68], edi
mov eax, dword [ebp + 0xb4]
mov dword [esp + 0x64], eax
mov eax, dword [ebp + 0x70]
mov dword [esp + 0x60], eax
mov eax, dword [ebp + 0x48]
mov dword [esp + 0x5c], eax
mov eax, dword [ebp + 0x24]
mov dword [esp + 0x58], eax
fld qword [ebp - 0xe0]
fstp qword [esp + 0x50]
mov eax, dword [ebp + 0x4c]
mov dword [esp + 0x4c], eax
mov dword [esp + 0x48], esi
mov eax, dword [ebp + 0x18]
mov dword [esp + 0x44], eax
mov eax, dword [ebp + 0xb0]
mov dword [esp + 0x40], eax
fld qword [ebp - 0x108]
fstp qword [esp + 0x38]
fld qword [ebp - 0x118]
fstp qword [esp + 0x30]
mov eax, dword [ebp + 0xb0]
mov dword [esp + 0x2c], eax
mov eax, dword [ebp + 0x24]
mov dword [esp + 0x28], eax
mov eax, dword [ebp + 0xb0]
mov dword [esp + 0x24], eax
mov eax, dword [ebp + 0x58]
mov dword [esp + 0x20], eax
mov eax, dword [ebp + 0x70]
mov dword [esp + 0x1c], eax
mov dword [esp + 0x18], ebx
fld qword [ebp - 0x100]
fstp qword [esp + 0x10]
mov eax, dword [ebp + 0xb0]
mov dword [esp + 0xc], eax
mov eax, dword [ebp + 0x14]
mov dword [esp + 8], eax
mov dword [esp + 4], ecx
mov dword [esp], edx
call sym._putlocal
mov eax, dword [ebp + 0x98]
mov eax, dword [eax + 0x20]
test eax, eax
jne 0x46c20d
mov eax, dword [ebp + 0x98]
mov ecx, dword [eax + 0x10]
mov ebx, dword [eax + 0x14]
mov eax, dword [ebp - 0xa8]
mov dword [ebp - 0x128], eax
mov esi, dword [ebp - 0x98]
mov dword [ebp - 0x130], esi
mov edi, dword [ebp - 0x44]
mov esi, dword [ebp + 0x98]
mov edx, dword [ebp - 0x74]
mov eax, dword [ebp + 0x70]
mov dword [esp + 0xa8], eax
mov eax, dword [ebp + 0xb8]
mov dword [esp + 0xa4], eax
mov dword [esp + 0x9c], ecx
mov dword [esp + 0xa0], ebx
mov eax, dword [ebp + 0xb0]
mov dword [esp + 0x98], eax
fld qword [ebp - 0xe8]
fstp qword [esp + 0x90]
mov eax, dword [ebp + 0x9c]
mov dword [esp + 0x8c], eax
mov eax, dword [ebp - 0x128]
mov dword [esp + 0x88], eax
mov eax, dword [ebp + 0xb0]
mov dword [esp + 0x84], eax
fld qword [ebp - 0xd0]
fstp qword [esp + 0x7c]
mov eax, dword [ebp - 0x130]
mov dword [esp + 0x78], eax
fld qword [ebp - 0x108]
fstp qword [esp + 0x70]
mov eax, dword [ebp + 0x50]
mov dword [esp + 0x6c], eax
mov eax, dword [ebp + 0x94]
mov dword [esp + 0x68], eax
fld qword [ebp - 0x120]
fstp qword [esp + 0x60]
mov eax, dword [ebp + 0x94]
mov dword [esp + 0x5c], eax
fld qword [ebp - 0x118]
fstp qword [esp + 0x54]
mov eax, dword [ebp + 0x14]
mov dword [esp + 0x50], eax
fld qword [ebp - 0x118]
fstp qword [esp + 0x48]
fld qword [ebp - 0xd8]
fstp qword [esp + 0x40]
mov eax, dword [ebp + 0x9c]
mov dword [esp + 0x3c], eax
mov dword [esp + 0x38], edi
mov dword [esp + 0x34], esi
mov eax, dword [ebp + 0xb0]
mov dword [esp + 0x30], eax
fld qword [ebp - 0xc0]
fstp qword [esp + 0x28]
mov eax, dword [ebp + 0x70]
mov dword [esp + 0x24], eax
mov dword [esp + 0x20], edx
mov eax, dword [ebp + 0x9c]
mov dword [esp + 0x1c], eax
fld qword [ebp - 0x120]
fstp qword [esp + 0x14]
mov eax, dword [ebp + 0x58]
mov dword [esp + 0x10], eax
mov eax, dword [ebp + 0x48]
mov dword [esp + 0xc], eax
fld qword [ebp - 0x118]
fstp qword [esp + 4]
mov eax, dword [ebp + 0x90]
mov dword [esp], eax
call sym._seekDestination
mov dword [ebp - 0xb4], eax
mov eax, dword [ebp - 0xb4]
test eax, eax
jne 0x46ddba
jmp 0x46d932
nop
jmp 0x46dc01
nop
mov eax, dword [ebp - 0x3c]
movzx edx, word [eax + 2]
movzx eax, byte [ebp - 0x3d]
movzx eax, al
cmp dx, ax
je 0x46dc20
mov dword [ebp - 0x38], 0x11
jmp 0x46c21d
movzx eax, byte [ebp - 0x3d]
test al, al
jne 0x46dc3a
cmp byte [ebp - 0x31], 0
jne 0x46dc3a
mov dword [ebp - 0x38], 0x11
jmp 0x46c21d
mov eax, dword [ebp - 0x44]
mov esi, dword [ebp - 0x74]
mov dword [ebp - 0x128], esi
mov ebx, dword [ebp - 0xb4]
mov dword [ebp - 0x130], ebx
mov edi, dword [ebp - 0x98]
mov esi, dword [ebp + 0x98]
mov ebx, dword [ebp - 0xac]
mov ecx, dword [ebp - 0xac]
mov edx, dword [ebp - 0x3c]
mov dword [esp + 0x9c], eax
mov eax, dword [ebp + 0x54]
mov dword [esp + 0x98], eax
mov eax, dword [ebp + 0x58]
mov dword [esp + 0x94], eax
mov eax, dword [ebp - 0x128]
mov dword [esp + 0x90], eax
fld qword [ebp - 0xd0]
fstp qword [esp + 0x88]
mov eax, dword [ebp - 0x130]
mov dword [esp + 0x84], eax
mov eax, dword [ebp + 0x18]
mov dword [esp + 0x80], eax
fld qword [ebp - 0xd8]
fstp qword [esp + 0x78]
mov eax, dword [ebp + 0x58]
mov dword [esp + 0x74], eax
mov eax, dword [ebp + 0x30]
mov dword [esp + 0x70], eax
mov dword [esp + 0x6c], edi
mov eax, dword [ebp + 0x14]
mov dword [esp + 0x68], eax
mov eax, dword [ebp + 0xb4]
mov dword [esp + 0x64], eax
mov dword [esp + 0x60], esi
mov dword [esp + 0x5c], ebx
fld qword [ebp - 0xf0]
fstp qword [esp + 0x54]
mov eax, dword [ebp + 0x3c]
mov dword [esp + 0x50], eax
fld qword [ebp - 0xc0]
fstp qword [esp + 0x48]
mov eax, dword [ebp + 0xb8]
mov dword [esp + 0x44], eax
mov eax, dword [ebp + 0x94]
mov dword [esp + 0x40], eax
fld qword [ebp - 0xd0]
fstp qword [esp + 0x38]
mov eax, dword [ebp + 0x18]
mov dword [esp + 0x34], eax
fld qword [ebp - 0x100]
fstp qword [esp + 0x2c]
mov dword [esp + 0x28], ecx
mov eax, dword [ebp + 0x48]
mov dword [esp + 0x24], eax
mov eax, dword [ebp + 0x48]
mov dword [esp + 0x20], eax
mov eax, dword [ebp + 0x7c]
mov dword [esp + 0x1c], eax
mov dword [esp + 0x18], edx
mov eax, dword [ebp + 0x94]
mov dword [esp + 0x14], eax
fld qword [ebp - 0xe0]
fstp qword [esp + 0xc]
mov eax, dword [ebp + 0x48]
mov dword [esp + 8], eax
fld qword [ebp - 0xd8]
fstp qword [esp]
call sym._putextended
mov eax, dword [ebp + 0x98]
mov eax, dword [eax + 0x20]
test eax, eax
jne 0x46c210
mov eax, dword [ebp + 0x98]
mov edx, dword [eax + 0x14]
mov eax, dword [eax + 0x10]
mov ecx, dword [ebp + 0x98]
add eax, 0x10
adc edx, 0
mov dword [ecx + 0x10], eax
mov dword [ecx + 0x14], edx
mov edx, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x3c]
movzx edx, word [edx + 0x30]
mov word [eax], dx
mov eax, dword [ebp + 0x98]
mov eax, dword [eax + 0x4c]
test eax, eax
jne 0x46ddd5
mov eax, dword [ebp + 0x98]
mov edx, dword [ebp - 0x3c]
mov dword [eax + 0x4c], edx
jmp 0x46de08
mov eax, dword [ebp + 0x98]
mov eax, dword [eax + 0x4c]
mov dword [ebp - 0x20], eax
jmp 0x46ddef
mov eax, dword [ebp - 0x20]
mov eax, dword [eax + 0x14c]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
mov eax, dword [eax + 0x14c]
test eax, eax
jne 0x46dde3
mov edx, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x20]
mov dword [eax + 0x14c], edx
mov eax, 0
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret