Function at 0x402950
Capabilities:
Read file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x34
mov eax, dword [0x43e004]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
push 0xb0
mov edi, ecx
call fcn.00412fa9
mov esi, eax
add esp, 4
test esi, esi
jne 0x4029c7
push 0x40
push str.malloc
push 0x43fe18
mov dword [0x43fc0c], 0xc9
call fcn.0040bfa6
push 0x104
xor eax, eax
mov dword [0x43fc08], 0xb0
push str.C:JenkinsAE_build_workHibun_AE_Current_src_sftlcmn_sftl_arc3.c
push 0x43fe98
mov word [0x43fe96], ax
mov word [0x43fe16], ax
call fcn.0040bfa6
add esp, 0x18
jmp 0x402cc2
push 0x43a704
push edi
call fcn.0040f36d
add esp, 8
mov dword [esi], eax
test eax, eax
jne 0x402a02
push 0x40
push str.fopen
push 0x43fe18
mov dword [0x43fc0c], 0xd3
call fcn.0040bfa6
xor eax, eax
mov dword [0x43fc08], eax
jmp 0x402c83
push 2
push 0xffffffffffffffff
push 0xfffffffffffffff9
push eax
call fcn.00410712
push dword [esi]
lea eax, [ebp - 0x2c]
push 2
push 1
push eax
call fcn.004102fc
add esp, 0x20
cmp eax, 2
jne 0x402c5c
push dword [esi]
lea eax, [ebp - 0x25]
push 1
push 1
push eax
call fcn.004102fc
add esp, 0x10
cmp eax, 1
jne 0x402c5c
push dword [esi]
push 4
push eax
lea eax, [ebp - 0x30]
push eax
call fcn.004102fc
add esp, 0x10
cmp eax, 4
jne 0x402c5c
mov eax, 0xfffe
cmp word [ebp - 0x2c], ax
jne 0x402acb
mov eax, dword [ebp - 0x30]
push 0
add eax, 0xfffffff9
push 0
push eax
push dword [esi]
call fcn.00410712
push dword [esi]
lea eax, [ebp - 0x2c]
push 2
push 1
push eax
call fcn.004102fc
add esp, 0x20
cmp eax, 2
jne 0x402c5c
push dword [esi]
lea eax, [ebp - 0x25]
push 1
push 1
push eax
call fcn.004102fc
add esp, 0x10
cmp eax, 1
jne 0x402c5c
push dword [esi]
push 4
push eax
lea eax, [ebp - 0x30]
push eax
call fcn.004102fc
add esp, 0x10
cmp eax, 4
jne 0x402c5c
push 0
push 0
push dword [ebp - 0x30]
push dword [esi]
call fcn.00410712
push dword [esi]
lea eax, [ebp - 0x24]
push 1
push 0x20
push eax
call fcn.004102fc
add esp, 0x20
cmp eax, 1
je 0x402b1a
push 0x40
push str.fread
push 0x43fe18
mov dword [0x43fc0c], 0xd5
call fcn.0040bfa6
mov dword [0x43fc08], 0x20
jmp 0x402c81
lea ecx, [ebp - 0x24]
call fcn.00402720
test eax, eax
jne 0x402bfd
push eax
push eax
push 0xffffffffffffffff
lea eax, [ebp - 0x24]
push eax
push 0
push 0x3a4
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
mov edi, eax
test edi, edi
je 0x402bd9
lea ecx, [edi + edi]
push ecx
push 8
call dword [sym.imp.KERNEL32.dll_GetProcessHeap]
push eax
call dword [sym.imp.KERNEL32.dll_HeapAlloc]
mov ebx, eax
test ebx, ebx
je 0x402bd9
push edi
push ebx
push 0xffffffffffffffff
lea eax, [ebp - 0x24]
push eax
push 0
push 0x3a4
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
push 0x104
xor eax, eax
mov dword [0x43fc0c], 8
push ebx
push 0x43fc10
mov word [0x43fe96], ax
mov dword [0x43fc08], eax
call fcn.0040bfa6
push 0x104
xor eax, eax
push str.C:JenkinsAE_build_workHibun_AE_Current_src_sftlcmn_sftl_arc3.c
push 0x43fe98
mov word [0x43fe16], ax
call fcn.0040bfa6
add esp, 0x18
xor eax, eax
mov word [0x44009e], ax
push ebx
push eax
call dword [sym.imp.KERNEL32.dll_GetProcessHeap]
push eax
call dword [sym.imp.KERNEL32.dll_HeapFree]
jmp 0x402cca
push 0x57
call dword [sym.imp.KERNEL32.dll_SetLastError]
xor eax, eax
mov dword [0x43fc0c], 8
mov word [0x43fe96], ax
mov dword [0x43fc08], eax
jmp 0x402ca3
movsx eax, word [ebp - 0x20]
xorps xmm0, xmm0
mov dword [esi + 4], eax
mov dword [esi + 8], 0
mov eax, dword [ebp - 0x30]
mov dword [esi + 0xc], eax
xor eax, eax
mov word [esi + 0x10], ax
mov dword [esi + 0x18], eax
mov dword [esi + 0x1c], eax
mov dword [esi + 0x20], eax
mov dword [esi + 0x24], eax
mov dword [esi + 0x28], eax
movups xmmword [esi + 0x2c], xmm0
push 0x40
movups xmmword [esi + 0x3c], xmm0
mov byte [esi + 0x4c], al
mov dword [esi + 0x60], eax
mov eax, dword [ebp - 0x1c]
mov dword [esi + 0x64], eax
mov dword [esi + 0x68], 0
mov al, byte [ebp - 0x1e]
mov byte [esi + 0x6c], al
lea eax, [esi + 0x6d]
push 0
push eax
call fcn.00407d30
add esp, 0xc
jmp 0x402cca
push 0x40
push str.fread
push 0x43fe18
mov dword [0x43fc0c], 0xd5
call fcn.0040bfa6
mov dword [0x43fc08], 4
xor eax, eax
add esp, 0xc
mov word [0x43fe96], ax
test edi, edi
je 0x402ca3
push 0x104
push edi
push 0x43fc10
call fcn.0040bfa6
add esp, 0xc
push 0x104
push str.C:JenkinsAE_build_workHibun_AE_Current_src_sftlcmn_sftl_arc3.c
xor eax, eax
push 0x43fe98
mov word [0x43fe16], ax
call fcn.0040bfa6
add esp, 0xc
xor eax, eax
mov word [0x44009e], ax
cmp dword [0x43fc0c], 0
je 0x402d02
test esi, esi
je 0x402cef
mov eax, dword [esi]
test eax, eax
je 0x402ce6
push eax
call fcn.0040ae9a
add esp, 4
push esi
call fcn.0040facf
add esp, 4
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00406bb3
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 4]
mov eax, esi
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.00406bb3
mov esp, ebp
pop ebp
ret