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

Disassembly:
mov eax, 0x37b4
call fcn.00460040
push ebx
push ebp
mov ebp, dword [esp + 0x37c0]
xor ebx, ebx
mov dword [esp + 0x5c], ebx
push esi
mov eax, dword [ebp + 0x47ac]
mov esi, dword [esp + 0x37c8]
push edi
mov dword [esp + 0x14], esi
cmp dword [eax], ebx
je 0x40f390
pop edi
pop esi
pop ebp
mov eax, 0xfffffffe
pop ebx
add esp, 0x37b4
ret
mov ecx, dword [ebp + 0x1804]
mov eax, 1
or edi, 0xffffffff
cmp ecx, eax
mov dword [esp + 0x20], eax
mov dword [esp + 0x28], ebx
je 0x40ffa7
jmp 0x40f3ba
mov esi, dword [esp + 0x37cc]
or edi, 0xffffffff
mov eax, dword [esp + 0x20]
test eax, eax
je 0x40f553
cmp dword [ebp + 0x1890], 1
jne 0x40f415
cmp dword [ebp + 0x24d8], edi
jne 0x40f547
mov al, byte [ebp + 0x17f0]
test al, al
jne 0x40f547
mov eax, dword [ebp + 0x486c]
mov ecx, dword [eax + 4]
mov edx, dword [ecx + 4]
push edx
push eax
call sub.oracore9.dll_lfiflu
add esp, 8
test eax, eax
je 0x40f547
push ebp
call fcn.00419d70
add esp, 4
jmp 0x40f547
mov al, byte [ebp + 0x17f0]
test al, al
je 0x40f44e
mov eax, dword [ebp + 0x4860]
cmp dword [eax], 0x3e7
je 0x40f44e
mov eax, dword [ebp + 0x24b8]
test eax, eax
je 0x40f542
mov eax, dword [ebp + 0x183c]
test eax, eax
je 0x40f547
jmp 0x40f542
cmp dword [ebp + 0x24d8], edi
je 0x40f464
mov eax, dword [ebp + 0x1820]
test eax, eax
je 0x40f547
mov eax, dword [ebp + 0x24b8]
test eax, eax
je 0x40f47c
mov eax, dword [ebp + 0x183c]
test eax, eax
je 0x40f547
mov eax, dword [ebp + 0x18a0]
test eax, eax
je 0x40f4d5
push 0xb
lea ecx, [esp + 0x14]
push str.HH24:MI:SS
lea edx, [esp + 0x9c]
push ecx
push edx
push ebp
mov dword [esp + 0x24], 0x20
call fcn.004067d0
push 0
push esi
lea eax, [esp + 0xb0]
push 0x467b20
lea ecx, [esp + 0xed4]
push eax
push ecx
call sub.oracore9.dll_lstcpn
lea edx, [esp + 0xedc]
add esp, 0x28
mov dword [esp + 0x14], edx
jmp 0x40f4f3
push 0
lea eax, [esp + 0xeb8]
push esi
push eax
call sub.oracore9.dll_lstcpn
lea ecx, [esp + 0xec0]
add esp, 0xc
mov dword [esp + 0x14], ecx
lea edx, [esp + 0xeb4]
push edx
push 0x467b24
push 5
push ebp
call fcn.00406990
mov eax, dword [ebp + 0x1840]
add esp, 0x10
test eax, eax
je 0x40f542
mov al, byte [ebp + 0x17f0]
test al, al
jne 0x40f542
mov eax, dword [ebp + 0x486c]
mov ecx, dword [eax + 4]
mov edx, dword [ecx + 4]
push edx
push eax
call sub.oracore9.dll_lfiflu
add esp, 8
test eax, eax
je 0x40f542
push ebp
call fcn.00419d70
add esp, 4
mov ebx, 1
test ebx, ebx
mov dword [esp + 0x20], 0
jne 0x40f570
mov eax, dword [esp + 0x28]
test eax, eax
je 0x40f56c
cmp dword [ebp + 0x24d8], edi
je 0x40f570
cmp dword [ebp + 0x1820], 1
je 0x40f570
xor esi, esi
jmp 0x40f575
mov esi, 1
lea eax, [esp + 0x1a78]
push 0x1d4c
push eax
push ebp
mov dword [esp + 0x24], esi
call fcn.0040ffc0
mov ebx, eax
add esp, 0xc
test ebx, ebx
mov dword [esp + 0x1c], ebx
jl 0x40fec5
jle 0x40fe6d
mov eax, dword [ebp + 0x2508]
mov dword [esp + 0x20], 1
mov ecx, dword [eax + 0x1c]
test ch, 2
je 0x40f5f3
mov ecx, dword [ebp + 0x250c]
mov edi, dword [ecx + 0xc]
xor esi, esi
mov si, word [eax + 0x20]
xor edx, edx
mov dl, byte [esp + ebx + 0x1a77]
mov esi, dword [edi + esi*4]
lea edx, [esi + edx*2]
mov esi, dword [eax]
test byte [edx + esi], 0x40
je 0x40f79e
dec ebx
mov byte [esp + ebx + 0x1a78], 0
jne 0x40f5bf
jmp 0x40f79e
mov ecx, dword [ebp + 0x250c]
push 0
push ecx
lea edx, [esp + 0x70]
push eax
push edx
lea eax, [esp + 0x1a88]
push ebx
push eax
call sub.oranls9.dll_lxmopen
sub ebx, eax
add esp, 0x18
mov ecx, 0xb
lea esi, [esp + 0x68]
lea edi, [esp + 0x38]
test ebx, ebx
rep movsd dword es:[edi], dword [esi]
jle 0x40f71c
mov edx, dword [esp + 0x70]
mov eax, dword [esp + 0x68]
test eax, eax
je 0x40f65f
mov esi, dword [esp + 0x74]
mov eax, dword [ebp + 0x250c]
xor ecx, ecx
mov cx, word [esi + 0x20]
mov edi, dword [eax + 0xc]
xor eax, eax
mov al, byte [edx]
mov ecx, dword [edi + ecx*4]
lea eax, [ecx + eax*2]
mov ecx, dword [esi]
mov al, byte [eax + ecx]
and eax, 0x40
jmp 0x40f677
mov edx, dword [ebp + 0x250c]
lea eax, [esp + 0x68]
push edx
push eax
call sub.oranls9.dll_lxmspax
mov edx, dword [esp + 0x78]
add esp, 8
test eax, eax
jne 0x40f6c8
mov eax, dword [esp + 0x80]
mov ecx, 0xb
lea esi, [esp + 0x68]
lea edi, [esp + 0x38]
rep movsd dword es:[edi], dword [esi]
mov esi, dword [esp + 0x78]
mov ecx, edx
sub ecx, esi
cmp ecx, eax
jae 0x40f6c1
mov eax, dword [esp + 0x74]
test byte [eax + 0x1c], 0x10
jne 0x40f6c1
mov edx, dword [ebp + 0x250c]
lea eax, [esp + 0x38]
push edx
push eax
call sub.oranls9.dll_lxmfwdx
mov edx, dword [esp + 0x78]
add esp, 8
jmp 0x40f6c8
lea ecx, [edx + 1]
mov dword [esp + 0x40], ecx
mov esi, dword [esp + 0x78]
mov ecx, dword [esp + 0x80]
mov eax, edx
sub eax, esi
cmp eax, ecx
jae 0x40f70b
mov ecx, dword [esp + 0x74]
test byte [ecx + 0x1c], 0x10
je 0x40f6f1
inc edx
mov eax, 1
mov dword [esp + 0x70], edx
jmp 0x40f712
mov edx, dword [ebp + 0x250c]
lea eax, [esp + 0x68]
push edx
push eax
call sub.oranls9.dll_lxmfwdx
mov edx, dword [esp + 0x78]
add esp, 8
jmp 0x40f712
inc edx
xor eax, eax
mov dword [esp + 0x70], edx
sub ebx, eax
test ebx, ebx
jg 0x40f630
mov ecx, dword [ebp + 0x250c]
lea edx, [esp + 0x38]
push ecx
push edx
call sub.oranls9.dll_lxmr2w
mov eax, dword [esp + 0x44]
add esp, 8
test eax, eax
je 0x40f763
mov eax, dword [esp + 0x4c]
test eax, eax
je 0x40f763
mov eax, dword [esp + 0x44]
mov edx, dword [esp + 0x40]
mov dword [esp + 0x4c], 0
mov cl, byte [eax + 0x45]
mov byte [edx], cl
mov eax, dword [esp + 0x40]
inc eax
mov dword [esp + 0x40], eax
mov byte [eax], 0
jmp 0x40f78c
mov eax, dword [esp + 0x44]
test dword [eax + 0x1c], 0x4000000
je 0x40f785
mov ecx, dword [esp + 0x40]
mov byte [ecx], 0
mov eax, dword [esp + 0x40]
inc eax
mov dword [esp + 0x40], eax
mov byte [eax], 0
jmp 0x40f78c
mov edx, dword [esp + 0x40]
mov byte [edx], 0
mov eax, dword [esp + 0x40]
mov edx, dword [esp + 0x48]
inc eax
mov dword [esp + 0x40], eax
sub eax, edx
dec eax
mov ebx, eax
mov eax, dword [esp + 0x18]
mov dword [esp + 0x1c], ebx
test eax, eax
je 0x40f922
mov al, byte [ebp + 0x17f0]
test al, al
jne 0x40f7c9
cmp dword [ebp + 0x24d8], 0xffffffff
jne 0x40f7d6
test al, al
je 0x40f922
cmp dword [ebp + 0x1820], 1
jne 0x40f922
mov eax, dword [ebp + 0x2508]
test dword [eax + 0x1c], 0x4000000
je 0x40f7f4
mov ecx, dword [esp + 0x14]
push ecx
call sub.oranls9.dll_lxsulen
add esp, 4
jmp 0x40f804
mov edi, dword [esp + 0x14]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov eax, ecx
mov edx, dword [esp + 0x1c]
lea esi, [eax + edx]
shl esi, 3
push esi
push ebp
call fcn.00408a60
mov ebx, eax
add esp, 8
test ebx, ebx
je 0x40fed2
mov eax, dword [ebp + 0x2508]
test dword [eax + 0x1c], 0x4000000
je 0x40f840
mov ecx, dword [esp + 0x14]
push ecx
call sub.oranls9.dll_lxsulen
add esp, 4
jmp 0x40f850
mov edi, dword [esp + 0x14]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov eax, ecx
mov edx, dword [esp + 0x14]
push eax
push edx
push ebx
call sub.oracore9.dll_lstrtb
mov esi, eax
mov eax, dword [esp + 0x28]
and esi, 7
lea ecx, [esp + 0x1a84]
push eax
push ecx
lea edx, [esi + ebx]
push edx
call sub.oracore9.dll_lstrtb
mov ecx, esi
add eax, esi
mov edx, ecx
mov dword [esp + 0x28], eax
mov eax, 0x20202020
mov edi, ebx
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, edx
add esp, 0x18
and ecx, 3
rep stosb byte es:[edi], al
mov eax, dword [ebp + 0x189c]
test eax, eax
mov eax, dword [esp + 0x10]
je 0x40f8b0
push eax
push ebx
push ebx
call sub.oracore9.dll_lstcprs
add esp, 0xc
cmp byte [ebx], 9
jne 0x40f8b7
xor esi, esi
test eax, eax
je 0x40f8ff
mov ecx, dword [ebp + 0x2508]
mov edx, dword [ecx + 0x1c]
test dh, 2
jne 0x40f8cd
mov byte [eax + ebx], 0
sub eax, esi
je 0x40f8f8
add esi, ebx
push esi
push eax
push 0x467b28
push 1
push ebp
call fcn.00406990
add esp, 0x14
push ebx
push ebp
call fcn.0040f330
mov ebx, dword [esp + 0x24]
add esp, 8
jmp 0x40fa03
push 0x467b30
jmp 0x40f904
push 0x467b34
push 1
push ebp
call fcn.00406990
add esp, 0xc
push ebx
push ebp
call fcn.0040f330
mov ebx, dword [esp + 0x24]
add esp, 8
jmp 0x40fa03
mov eax, dword [ebp + 0x184c]
test eax, eax
je 0x40fa03
mov eax, dword [esp + 0x18]
test eax, eax
je 0x40fa35
mov eax, dword [ebp + 0x4810]
test byte [eax], 1
je 0x40f9e3
test byte [eax + 3], 1
je 0x40f9e3
push 0x3a98
push ebp
call fcn.00408a60
mov esi, eax
add esp, 8
test esi, esi
je 0x40fef5
mov ecx, 0x271
mov eax, 0x20202020
mov edi, esi
rep stosd dword es:[edi], eax
mov byte [esi], 0
mov edx, dword [ebp + 0x4810]
push edx
lea eax, [esp + 0x1a7c]
push esi
push eax
push ebp
call fcn.00403ba0
mov ecx, dword [ebp + 0x2508]
add esp, 0x10
test dword [ecx + 0x1c], 0x4000000
je 0x40f9b3
push esi
call sub.oranls9.dll_lxsulen
add esp, 4
mov ebx, eax
jmp 0x40f9c1
mov edi, esi
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov ebx, ecx
mov edx, dword [ebp + 0x18e0]
push esi
push ebx
push 0x467b38
push 1
push edx
push ebp
call fcn.00407550
push esi
push ebp
call fcn.0040f330
add esp, 0x20
jmp 0x40fa03
mov ecx, dword [ebp + 0x18e0]
lea eax, [esp + 0x1a78]
push eax
push ebx
push 0x467b40
push 1
push ecx
push ebp
call fcn.00407550
add esp, 0x18
mov eax, dword [esp + 0x18]
test eax, eax
je 0x40fa35
mov eax, dword [ebp + 0x4810]
test byte [eax], 1
je 0x40fa35
mov ecx, dword [ebp + 0x17f4]
test ecx, ecx
je 0x40fa29
cmp dword [ebp + 0x1820], 1
jne 0x40fa35
push eax
push 6
push ebp
call fcn.004039d0
add esp, 0xc
lea edx, [esp + 0x1a78]
push edx
push ebp
call fcn.00411ac0
mov esi, eax
mov eax, ebx
sub eax, esi
add esp, 8
lea edi, [esp + eax + 0x1a78]
mov eax, dword [esp + 0x37d8]
test eax, eax
jne 0x40ff47
cmp edi, 1
jl 0x40ff47
cmp byte [esi], 0x40
jne 0x40ff47
push 0x9c4
push ebp
mov dword [esp + 0x18], 0
call fcn.00408a60
mov ebx, eax
add esp, 8
test ebx, ebx
mov dword [esp + 0x24], 0xffffffff
je 0x40fef5
mov edx, dword [ebp + 0x480c]
lea ecx, [esp + 0x24]
push ecx
push 5
push 0x467b48
push 3
push edx
push ebp
call fcn.00407ba0
add esp, 0x18
test eax, eax
jne 0x40fb15
cmp edi, 1
jle 0x40faef
cmp byte [esi + 1], 0x40
jne 0x40faef
mov eax, dword [esp + 0x24]
mov ecx, dword [ebp + 0x480c]
push 3
push eax
push ecx
push ebp
call fcn.00407de0
add esp, 0x10
push ebx
push ebp
call fcn.0040f330
add esp, 8
jmp 0x40fea4
mov edx, dword [esp + 0x24]
mov eax, dword [ebp + 0x480c]
push 2
push edx
push eax
push ebp
call fcn.00407de0
add esp, 0x10
push ebx
push ebp
call fcn.0040f330
add esp, 8
jmp 0x40fea4
mov cl, byte [edi + esi - 1]
mov al, byte [ebp + 0x18ee]
cmp cl, al
mov dword [esp + 0x18], 1
jne 0x40fb30
dec edi
mov byte [edi + esi], 0
lea edx, [esp + 0x64]
lea eax, [esp + 0x10]
push edx
push eax
push 0x9c4
push ebx
push edi
push esi
push ebp
call fcn.00439310
add esp, 0x1c
test eax, eax
jne 0x40fb5b
mov ecx, dword [esp + 0x10]
test ecx, ecx
je 0x40ff1c
cdq
xor eax, edx
mov esi, ebx
sub eax, edx
cmp eax, 1
mov byte [eax + ebx], 0
jle 0x40fdda
mov al, byte [ebx + 1]
lea edi, [ebx + 1]
cmp al, 0x40
jne 0x40fdda
lea esi, [ebx + 2]
push esi
push ebp
call fcn.00419dd0
add esp, 8
test eax, eax
je 0x40fbf6
mov ecx, dword [ebp + 0x24d8]
mov esi, edi
lea eax, [ecx + ecx*2]
shl eax, 3
sub eax, ecx
lea ecx, [eax + eax*2]
lea eax, [esi + 1]
lea edx, [ebp + ecx*4 + 0x260]
push edx
push eax
push ebp
call fcn.00411ac0
add esp, 8
push eax
push ebp
call fcn.0041a060
add esp, 0xc
test eax, eax
jne 0x40fdda
cmp dword [ebp + 0x24d8], 0xffffffff
je 0x40fdda
push 0
push 0x22c
push 1
push 2
push ebp
call fcn.00409560
add esp, 0x14
mov dword [esp + 0x18], 0
jmp 0x40fdda
mov eax, dword [ebp + 0x17f4]
test eax, eax
je 0x40fc3e
mov ecx, dword [ebp + 0x250c]
mov edx, dword [ebp + 0x2508]
push ecx
push edx
push 0x10000000
push 0xffffffffffffffff
push 0x467b50
lea eax, [ebp + 0x22cd]
push 0xffffffffffffffff
push eax
call sub.oranls9.dll_lxsCmpStr
add esp, 0x1c
test eax, eax
je 0x40fc3e
push ebx
push ebp
call fcn.0040f330
add esp, 8
jmp 0x40fea4
mov ecx, dword [ebp + 0x24d8]
lea eax, [ecx + ecx*2]
shl eax, 3
sub eax, ecx
lea ecx, [eax + eax*2]
lea eax, [esp + 0x8b4]
lea edx, [ebp + ecx*4 + 0x264]
lea ecx, [esp + 0x1878]
push edx
push eax
lea edx, [esp + 0xcbc]
push ecx
lea eax, [esp + 0xac0]
push edx
lea ecx, [esp + 0x3c]
push eax
push ecx
call sub.oracommon9.dll_slfnp
mov eax, dword [esp + 0x44]
add esp, 0x18
test eax, eax
je 0x40fca0
push 0
push 0x22c
push 1
push 2
push ebp
call fcn.00409560
add esp, 0x14
mov eax, dword [ebp + 0x2508]
mov ecx, dword [ebp + 0x250c]
xor edx, edx
push esi
mov dx, word [eax + 0x20]
mov edi, dword [ecx + 0xc]
xor ecx, ecx
mov cl, byte [esi]
mov edx, dword [edi + edx*4]
lea ecx, [edx + ecx*2]
mov edx, dword [eax]
test byte [ecx + edx], 0x40
je 0x40fcfe
push ebp
call fcn.00411ac0
push eax
lea eax, [esp + 0x4c0]
lea ecx, [esp + 0x6c0]
push eax
lea edx, [esp + 0x2c4]
push ecx
lea eax, [esp + 0xc8]
push edx
lea ecx, [esp + 0x44]
push eax
push ecx
call sub.oracommon9.dll_slfnp
add esp, 0x20
jmp 0x40fd2b
lea edx, [esp + 0x4b8]
lea eax, [esp + 0x6b8]
push edx
lea ecx, [esp + 0x2bc]
push eax
lea edx, [esp + 0xc0]
push ecx
lea eax, [esp + 0x3c]
push edx
push eax
call sub.oracommon9.dll_slfnp
add esp, 0x18
mov eax, dword [esp + 0x2c]
test eax, eax
je 0x40fd47
push 0
push 0x22c
push 1
push 2
push ebp
call fcn.00409560
add esp, 0x14
mov al, byte [esp + 0xb4]
lea edx, [esp + 0xb4]
test al, al
jne 0x40fd60
lea edx, [esp + 0xab4]
mov al, byte [esp + 0x2b4]
lea ecx, [esp + 0x2b4]
test al, al
jne 0x40fd79
lea ecx, [esp + 0xcb4]
mov al, byte [esp + 0x4b4]
test al, al
lea eax, [esp + 0x4b4]
jne 0x40fd92
lea eax, [esp + 0x8b4]
lea esi, [esp + 0x1a79]
push 0x200
push esi
push eax
lea eax, [esp + 0x6c0]
push eax
push ecx
lea ecx, [esp + 0x40]
push edx
push ecx
call sub.orageneric9.dll_slgfn
mov eax, dword [esp + 0x48]
add esp, 0x1c
test eax, eax
lea esi, [esp + 0x1a78]
je 0x40fdda
push 0
push 0x22c
push 1
push 2
push ebp
call fcn.00409560
add esp, 0x14
cmp dword [ebp + 0x24d8], 0x13
jne 0x40fe08
push 0x14
push 1
push 0x135
push 1
push 2
push ebp
call fcn.00409560
add esp, 0x18
push ebx
push ebp
call fcn.0040f330
add esp, 8
jmp 0x40fea4
mov eax, dword [esp + 0x18]
test eax, eax
je 0x40fe61
mov eax, dword [ebp + 0x2508]
lea ecx, [esi + 1]
mov esi, dword [ebp + 0x250c]
xor edx, edx
mov dx, word [eax + 0x20]
mov eax, dword [eax]
mov esi, dword [esi + 0xc]
mov edi, edx
xor edx, edx
push ecx
mov dl, byte [ecx]
mov esi, dword [esi + edi*4]
push ebp
lea edx, [esi + edx*2]
test byte [edx + eax], 0x40
je 0x40fe59
call fcn.00411ac0
push eax
push ebp
call fcn.004062a0
add esp, 0x10
push ebx
push ebp
call fcn.0040f330
add esp, 8
jmp 0x40fea4
call fcn.004062a0
add esp, 8
push ebx
push ebp
call fcn.0040f330
add esp, 8
jmp 0x40fea4
cmp dword [ebp + 0x24d8], edi
je 0x40ff94
push 0
push ebp
call fcn.0040cc60
add esp, 8
test esi, esi
je 0x40fe9c
mov eax, dword [ebp + 0x18a8]
test eax, eax
je 0x40fe9c
mov dword [esp + 0x28], 1
jmp 0x40fea4
mov dword [esp + 0x20], 1
mov eax, dword [ebp + 0x1804]
xor ebx, ebx
cmp eax, 1
jne 0x40f3b0
or edi, 0xffffffff
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x37b4
ret
pop edi
pop esi
mov eax, ebx
pop ebp
pop ebx
add esp, 0x37b4
ret
push esi
push 1
push 0x92
push 1
push 2
push ebp
call fcn.00409560
add esp, 0x18
or eax, 0xffffffff
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x37b4
ret
push 0x9c4
push 1
push 0x92
push 1
push 2
push ebp
call fcn.00409560
add esp, 0x18
or eax, 0xffffffff
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x37b4
ret
push 1
push 0x9c3
push 2
push 0x155
push 1
push 2
push ebp
call fcn.00409560
add esp, 0x1c
mov eax, 1
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x37b4
ret
mov ecx, dword [esp + 0x37d4]
dec ecx
cmp ebx, ecx
jle 0x40ff63
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x37b4
ret
mov eax, dword [esp + 0x37d0]
mov ecx, ebx
mov edx, ecx
lea esi, [esp + 0x1a78]
mov edi, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
mov byte [ebx + eax], 0
pop ebp
xor eax, eax
pop ebx
add esp, 0x37b4
ret
mov eax, dword [ebp + 0x184c]
mov ecx, dword [ebp + 4]
push eax
push ecx
call fcn.0043d470
add esp, 8
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x37b4
ret