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

Disassembly:
push 0xffffffffffffffff
push 0x5cadfb
mov eax, dword fs:[0]
push eax
sub esp, 0x15c
mov eax, dword [0x694114]
xor eax, esp
mov dword [esp + 0x158], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x694114]
xor eax, esp
push eax
lea eax, [esp + 0x170]
mov dword fs:[0], eax
mov edi, dword [esp + 0x180]
xor ebx, ebx
mov dword [esp + 0x18], ebx
cmp dword [edi + 0x14], 8
mov esi, ecx
mov dword [esp + 0x20], edi
jb 0x4533a8
mov eax, dword [edi]
jmp 0x4533aa
mov eax, edi
movzx edx, byte [esp + 0x184]
mov ecx, dword [esp + 0x188]
neg edx
sbb edx, edx
and edx, 0xfffffe00
add edx, 0x400
push ecx
or edx, 0x8101
push edx
push eax
call fcn.00586ea1
mov ebp, eax
add esp, 0xc
cmp ebp, 0xffffffff
jne 0x453926
call fcn.00586783
mov eax, dword [eax]
mov dword [esi + 4], eax
xor al, al
cmp al, bl
jne 0x453450
lea ecx, [esp + 0x148]
push 0x5fcf00
push ecx
call fcn.00423280
add esp, 8
mov esi, eax
or dword [esp + 0x18], 1
mov dword [esp + 0x178], ebx
cmp dword [0x695aa8], ebx
je 0x453434
call sub.KERNEL32.dll_GetCurrentThreadId
cmp eax, dword [0x695aa8]
je 0x453434
call fcn.004443b0
jmp 0x453439
mov al, byte [0x68a580]
cmp al, bl
je 0x453450
push esi
call fcn.00445fa0
add esp, 4
mov byte [esp + 0x17], 1
cmp eax, 1
jae 0x453454
mov byte [esp + 0x17], bl
test byte [esp + 0x18], 1
mov dword [esp + 0x178], 0xffffffff
je 0x453495
mov edx, dword [esp + 0x164]
and dword [esp + 0x18], 0xfffffffe
push edx
call fcn.005844d1
add esp, 4
cmp dword [esp + 0x15c], 8
jb 0x453495
mov eax, dword [esp + 0x148]
push eax
call fcn.00584768
add esp, 4
cmp byte [esp + 0x17], bl
je 0x453922
push str.cant_create_file__s
lea ecx, [esp + 0x128]
call fcn.00402bb0
mov ebp, 7
xor ecx, ecx
mov dword [esp + 0x178], 1
mov dword [esp + 0x70], ebp
mov dword [esp + 0x6c], ebx
mov word [esp + 0x5c], cx
mov dword [esp + 0x78], ebx
mov dword [esp + 0x7c], ebx
xor edx, edx
mov dword [esp + 0x94], ebp
mov dword [esp + 0x90], ebx
mov word [esp + 0x80], dx
mov dword [esp + 0x9c], ebx
mov dword [esp + 0xa0], ebx
mov byte [esp + 0x178], 3
call fcn.00425e70
cmp eax, ebx
je 0x45352e
lea ecx, [esp + 0x5c]
push ecx
lea edx, [esp + 0x84]
push edx
lea ecx, [esp + 0x12c]
push ecx
mov ecx, eax
call fcn.00429320
cmp eax, ebx
jne 0x45353e
lea edx, [esp + 0x124]
push edx
call fcn.004292f0
add esp, 4
mov esi, eax
call fcn.00420510
mov dword [esp + 0x48], eax
mov byte [esp + 0x178], 4
call fcn.00420510
mov dword [esp + 0x4c], eax
mov byte [esp + 0x178], 5
call fcn.00420510
mov dword [esp + 0x50], eax
mov dword [esp + 0x54], esi
mov dword [esp + 0x58], ebx
push str.wx.sys_error
lea ecx, [esp + 0x104]
mov byte [esp + 0x17c], 6
call fcn.00402bb0
push 0xffffffffffffffff
push ebx
xor eax, eax
push edi
lea ecx, [esp + 0x30]
mov byte [esp + 0x184], 7
mov dword [esp + 0x44], ebp
mov dword [esp + 0x40], ebx
mov word [esp + 0x30], ax
call fcn.00402610
mov dword [esp + 0x40], ebx
mov dword [esp + 0x44], ebx
mov byte [esp + 0x178], 8
mov dword [esp + 0xa8], 1
mov dword [esp + 0xb0], str....._srccommon_file.cpp
mov dword [esp + 0xb8], str.wxFile::Create
mov dword [esp + 0xb4], 0xa3
mov dword [esp + 0xbc], 0x5fcf00
mov dword [esp + 0xc0], ebx
mov dword [esp + 0xc4], ebx
mov dword [esp + 0xc8], ebx
mov dword [esp + 0xcc], ebx
call sub.KERNEL32.dll_GetCurrentThreadId
xor ecx, ecx
mov dword [esp + 0xd0], eax
mov dword [esp + 0xd4], ebx
mov dword [esp + 0xec], ebp
mov dword [esp + 0xe8], ebx
mov word [esp + 0xd8], cx
mov dword [esp + 0xf4], ebx
mov dword [esp + 0xf8], ebx
mov byte [esp + 0x178], 9
call sub.KERNEL32.dll_GetLastError
push 0xffffffffffffffff
push ebx
lea edx, [esp + 0x108]
push edx
lea ecx, [esp + 0xe4]
mov edi, eax
call fcn.00402610
mov ecx, dword [esp + 0xd4]
cmp ecx, ebx
jne 0x4536e8
push 0x20
call fcn.00584773
mov esi, eax
add esp, 4
mov dword [esp + 0x1c], esi
mov byte [esp + 0x178], 0xa
cmp esi, ebx
je 0x4536d7
push 0x64
call fcn.00447710
push 4
push eax
mov dword [esi + 4], eax
mov dword [esi + 8], ebx
call fcn.00585c5e
mov dword [esi], eax
push 0x64
mov byte [esp + 0x188], 0xb
call fcn.00447710
push 4
push eax
mov dword [esi + 0x14], eax
mov dword [esi + 0x18], ebx
call fcn.00585c5e
add esp, 0x18
mov dword [esi + 0x10], eax
mov ecx, esi
jmp 0x4536d9
xor ecx, ecx
mov byte [esp + 0x178], 9
mov dword [esp + 0xd4], ecx
lea eax, [esp + 0x100]
push eax
call fcn.004775a0
mov dword [eax], edi
lea ecx, [esp + 0x24]
mov dword [esp + 0x1c], ecx
lea ecx, [esp + 0x48]
mov byte [esp + 0x178], 0xd
call fcn.0041de00
lea ecx, [esp + 0x1c]
mov esi, eax
call fcn.0041d2a0
push eax
lea edx, [esp + 0xac]
push esi
push edx
call fcn.0040b680
mov eax, dword [esp + 0x4c]
push eax
call fcn.005844d1
mov edi, 8
add esp, 0x10
cmp dword [esp + 0x38], edi
jb 0x45374f
mov ecx, dword [esp + 0x24]
push ecx
call fcn.00584768
add esp, 4
mov eax, dword [esp + 0xf4]
xor edx, edx
push eax
mov dword [esp + 0x3c], ebp
mov dword [esp + 0x38], ebx
mov word [esp + 0x28], dx
call fcn.005844d1
add esp, 4
cmp dword [esp + 0xec], edi
jb 0x453787
mov ecx, dword [esp + 0xd8]
push ecx
call fcn.00584768
add esp, 4
mov esi, dword [esp + 0xd4]
xor edx, edx
mov dword [esp + 0xec], ebp
mov dword [esp + 0xe8], ebx
mov word [esp + 0xd8], dx
mov dword [esp + 0xa4], esi
cmp esi, ebx
je 0x453809
mov eax, dword [esi + 0x10]
mov ecx, dword [esi + 0x14]
push 0x40b5f0
push eax
push ecx
mov byte [esp + 0x184], 0xe
call fcn.00447740
mov edi, dword [esi + 0x10]
push edi
mov dword [esi + 0x18], ebx
call fcn.005844d1
mov edx, dword [esi]
mov eax, dword [esi + 4]
push 0x475ea0
push edx
push eax
mov byte [esp + 0x194], 7
call fcn.00447740
mov eax, dword [esi]
push eax
mov dword [esi + 8], ebx
call fcn.005844d1
push esi
call fcn.00584768
add esp, 0x24
mov edi, 8
mov ecx, dword [esp + 0x11c]
push ecx
call fcn.005844d1
add esp, 4
cmp dword [esp + 0x114], edi
jb 0x453832
mov edx, dword [esp + 0x100]
push edx
call fcn.00584768
add esp, 4
xor eax, eax
lea ecx, [esp + 0x48]
mov dword [esp + 0x114], ebp
mov dword [esp + 0x110], ebx
mov word [esp + 0x100], ax
mov byte [esp + 0x178], 3
call fcn.004020c0
mov ecx, dword [esp + 0x9c]
push ecx
call fcn.005844d1
add esp, 4
cmp dword [esp + 0x94], edi
jb 0x453884
mov edx, dword [esp + 0x80]
push edx
call fcn.00584768
add esp, 4
mov ecx, dword [esp + 0x78]
xor eax, eax
push ecx
mov dword [esp + 0x98], ebp
mov dword [esp + 0x94], ebx
mov word [esp + 0x84], ax
call fcn.005844d1
add esp, 4
cmp dword [esp + 0x70], edi
jb 0x4538bc
mov edx, dword [esp + 0x5c]
push edx
call fcn.00584768
add esp, 4
mov ecx, dword [esp + 0x140]
xor eax, eax
push ecx
mov dword [esp + 0x74], ebp
mov dword [esp + 0x70], ebx
mov word [esp + 0x60], ax
mov dword [esp + 0x17c], 0xffffffff
call fcn.005844d1
add esp, 4
cmp dword [esp + 0x138], edi
jb 0x4538ff
mov edx, dword [esp + 0x124]
push edx
call fcn.00584768
add esp, 4
mov edi, dword [esp + 0x20]
xor eax, eax
mov word [esp + 0x124], ax
mov dword [esp + 0x138], ebp
mov dword [esp + 0x134], ebx
mov al, 1
jmp 0x4533f1
xor al, al
jmp 0x453934
mov ecx, esi
call fcn.00450f10
mov dword [esi], ebp
mov dword [esi + 4], ebx
mov al, 1
mov ecx, dword [esp + 0x170]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x158]
xor ecx, esp
call fcn.00585b7b
add esp, 0x168
ret 0xc