Function at 0x43fc86
Capabilities:
Read file on windows

Disassembly:
push 0x1f0
mov eax, 0x44e64c
call fcn.0041bafd
mov esi, 0x490fe4
push esi
push 0x44c
call fcn.00441345
push esi
call fcn.0043f8d4
mov eax, dword [0x490d70]
shr eax, 0x11
test al, 1
je 0x43ff98
xor eax, eax
mov dword [ebp - 0x30], 7
xor ecx, ecx
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x34], eax
mov word [ebp - 0x44], cx
mov dword [ebp - 4], eax
lea edx, [ebp - 0x44]
cmp dword [0x490c8c], 8
mov ecx, 0x490c78
cmovae ecx, dword [0x490c78]
call fcn.0040973e
push 0x2e
lea ecx, [ebp - 0x44]
call fcn.0040a27c
push str.xstg
lea ecx, [ebp - 0x44]
call fcn.00401e19
mov edx, dword [0x490d9c]
lea ecx, [ebp - 0x44]
ror edx, 5
call fcn.0044a670
test al, al
je 0x43ff40
cmp dword [ebp - 0x30], 8
lea eax, [ebp - 0x44]
push 0x461624
cmovae eax, dword [ebp - 0x44]
push eax
call fcn.00421523
mov edi, eax
mov dword [ebp - 0x1e8], edi
pop ecx
pop ecx
test edi, edi
je 0x43ff40
mov ecx, edi
call fcn.00407fe1
mov esi, eax
push esi
mov dword [ebp - 0x1e0], esi
call fcn.0041b41a
push edi
push 1
push esi
push eax
mov dword [ebp - 0x1e4], eax
call fcn.00427805
add esp, 0x14
test eax, eax
je 0x43ff28
lea ecx, [ebp - 0x11c]
call fcn.00406fd1
xor eax, eax
push 0xf
pop esi
mov dword [ebp - 0xf4], eax
mov dword [ebp - 0xdc], eax
mov dword [ebp - 0xc4], eax
mov dword [ebp - 0xac], eax
mov dword [ebp - 0xe4], eax
mov dword [ebp - 0xe0], esi
mov byte [ebp - 0xf4], al
mov dword [ebp - 0xcc], eax
mov dword [ebp - 0xc8], esi
mov byte [ebp - 0xdc], al
mov dword [ebp - 0xb4], eax
mov dword [ebp - 0xb0], esi
mov byte [ebp - 0xc4], al
mov dword [ebp - 0x9c], eax
mov dword [ebp - 0x98], esi
mov byte [ebp - 0xac], al
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x18], esi
mov byte [ebp - 0x2c], al
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x2c]
push dword [ebp - 0x1e0]
push dword [ebp - 0x1e4]
call fcn.00402114
lea eax, [ebp - 0x2c]
push eax
lea ecx, [ebp - 0x11c]
call fcn.00449ed0
test al, al
je 0x43fea9
cmp dword [0x490ff8], 0x10
mov ecx, 0x490fe4
push dword [ebp - 0xcc]
mov eax, ecx
cmovae eax, dword [0x490fe4]
and dword [0x490ff4], 0
cmp dword [ebp - 0xc8], 0x10
mov byte [eax], 0
lea eax, [ebp - 0xdc]
cmovae eax, dword [ebp - 0xdc]
push eax
call fcn.00402114
push 0x490fe4
call fcn.0043f8d4
cmp dword [0x491040], 0x10
mov ecx, 0x49102c
push dword [ebp - 0xb4]
mov eax, ecx
cmovae eax, dword [0x49102c]
and dword [0x49103c], 0
cmp dword [ebp - 0xb0], 0x10
mov byte [eax], 0
lea eax, [ebp - 0xc4]
cmovae eax, dword [ebp - 0xc4]
push eax
call fcn.00402114
cmp dword [ebp - 0x18], 0x10
lea eax, [ebp - 0x2c]
cmovae eax, dword [ebp - 0x2c]
and dword [ebp - 0x1c], 0
mov byte [eax], 0
mov eax, dword [ebp - 0x18]
cmp eax, 0x10
jb 0x43ff04
mov ecx, dword [ebp - 0x2c]
inc eax
mov dword [ebp - 0x1e8], eax
mov dword [ebp - 0x1e0], ecx
cmp eax, 0x1000
jb 0x43fefb
lea eax, [ebp - 0x1e8]
push eax
lea eax, [ebp - 0x1e0]
push eax
call fcn.0040247c
mov eax, dword [ebp - 0x1e8]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x1e0]
push eax
push ecx
call fcn.0041b163
pop ecx
pop ecx
and dword [ebp - 0x1c], 0
lea ecx, [ebp - 0x11c]
mov dword [ebp - 0x18], esi
mov byte [ebp - 0x2c], 0
call fcn.00407000
jmp 0x43ff2b
push 0xf
pop esi
push dword [ebp - 0x1e4]
call fcn.0041b415
push edi
call fcn.00421961
pop ecx
pop ecx
jmp 0x43ff43
push 0xf
pop esi
or dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x30]
cmp eax, 8
jb 0x43ff9b
mov ecx, dword [ebp - 0x44]
lea eax, [eax*2 + 2]
mov dword [ebp - 0x1e4], eax
mov dword [ebp - 0x1e0], ecx
cmp eax, 0x1000
jb 0x43ff8d
lea eax, [ebp - 0x1e4]
push eax
lea eax, [ebp - 0x1e0]
push eax
call fcn.0040247c
mov eax, dword [ebp - 0x1e4]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x1e0]
push eax
push ecx
call fcn.0041b163
pop ecx
pop ecx
jmp 0x43ff9b
push 0xf
pop esi
mov edi, 0x490ffc
push edi
push 0x438
call fcn.00441345
cmp dword [0x49100c], 2
jbe 0x43ffba
push edi
call fcn.00410863
mov ecx, dword [0x490fd8]
mov eax, dword [ecx]
call dword [eax]
mov eax, dword [0x490d70]
shr eax, 0x12
test al, 1
je 0x440000
lea ecx, [ebp - 0x1dc]
call fcn.0040695f
lea ecx, [ebp - 0x1dc]
mov dword [ebp - 4], 5
call fcn.0040d461
test al, al
jne 0x440121
lea ecx, [ebp - 0x1dc]
call fcn.00406aa4
xor eax, eax
mov dword [ebp - 0x48], esi
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x4c], eax
mov byte [ebp - 0x5c], al
lea eax, [ebp - 0x5c]
mov dword [ebp - 4], 8
push eax
push 0x40b
call fcn.004413ba
test al, al
je 0x4400a1
xor eax, eax
mov dword [ebp - 0x94], 0x46183c
mov dword [ebp - 0x90], eax
mov dword [ebp - 0x80], eax
mov dword [ebp - 0x7c], esi
mov byte [ebp - 0x90], al
mov dword [ebp - 0x78], eax
mov dword [ebp - 0x74], eax
mov dword [ebp - 0x70], eax
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x90]
cmp dword [ebp - 0x48], 0x10
push dword [ebp - 0x4c]
mov dword [ebp - 0x6c], eax
mov dword [ebp - 0x68], eax
mov dword [ebp - 0x64], eax
mov dword [ebp - 0x60], eax
lea eax, [ebp - 0x5c]
cmovae eax, dword [ebp - 0x5c]
push eax
call fcn.00402114
mov byte [ebp - 4], 0xb
mov ecx, dword [0x491044]
test ecx, ecx
je 0x440092
lea eax, [ebp - 0x94]
push eax
call fcn.00449bd0
lea ecx, [ebp - 0x94]
mov byte [ebp - 4], 8
call fcn.0040ba84
call fcn.00440d11
cmp dword [0x490ed0], 0
jne 0x4400b8
cmp dword [0x490ed4], 0
je 0x4400bd
call fcn.00440647
mov ecx, dword [0x490fd8]
mov eax, dword [ecx]
call dword [eax]
push edi
call fcn.00440c4b
call fcn.00440314
mov eax, dword [ebp - 0x48]
cmp eax, 0x10
jb 0x44011b
mov ecx, dword [ebp - 0x5c]
inc eax
mov dword [ebp - 0x1e4], eax
mov dword [ebp - 0x1e0], ecx
cmp eax, 0x1000
jb 0x440112
lea eax, [ebp - 0x1e4]
push eax
lea eax, [ebp - 0x1e0]
push eax
call fcn.0040247c
mov eax, dword [ebp - 0x1e4]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x1e0]
push eax
push ecx
call fcn.0041b163
pop ecx
pop ecx
call fcn.0041ba4f
ret
lea eax, [ebp - 0x44]
push 0x43
push eax
call fcn.004013b0
mov ecx, eax
call fcn.00407aba
lea eax, [ebp - 0x44]
push eax
lea ecx, [ebp - 0x24]
call fcn.00405407
lea eax, [ebp - 0x24]
mov byte [ebp - 4], 7
push eax
lea ecx, [ebp - 0x1fc]
call fcn.004049ba
push 0x466fb4
lea eax, [ebp - 0x1fc]
push eax
call fcn.0041eb2e
int3