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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x14c
mov eax, dword [0x5c2460]
xor eax, esp
mov dword [esp + 0x148], eax
mov eax, dword [ebp + 8]
push ebx
push esi
mov esi, dword [ebp + 0x14]
xor ebx, ebx
mov dword [esp + 0x34], eax
mov eax, dword [ebp + 0xc]
push edi
mov edi, ecx
mov dword [esp + 0x34], eax
mov eax, dword [ebp + 0x10]
mov dword [esp + 0x20], edx
mov dword [esp + 0x30], eax
mov dword [esp + 0x2c], ebx
mov byte [esp + 0xf], bl
test edi, edi
je 0x4faa6c
push 8
push str.ICUDATA
push edi
call fcn.00517bbb
add esp, 0xc
test eax, eax
je 0x4faa6c
push 9
push str.icudt54l_
push edi
call fcn.005055b0
add esp, 0xc
test eax, eax
je 0x4faa6c
push 8
push str.ICUDATA_
push edi
call fcn.005055b0
add esp, 0xc
test eax, eax
jne 0x4faa71
mov byte [esp + 0xf], 1
mov word [esp + 0x124], bx
lea eax, [esp + 0x125]
mov dword [esp + 0x11c], eax
mov dword [esp + 0x150], ebx
push 0x28
pop ecx
mov dword [esp + 0x120], ecx
test edi, edi
je 0x4faaec
push 0x2f
push edi
call fcn.0051fc90
pop ecx
pop ecx
test eax, eax
je 0x4faae9
push edi
lea ecx, [esp + 0x14]
call fcn.004f8b5f
push esi
push dword [esp + 0x18]
lea ecx, [esp + 0x124]
push dword [esp + 0x18]
call fcn.004fefe9
jmp 0x4faace
mov byte [eax], 0x5c
push 0x2f
push dword [esp + 0x120]
call fcn.0051fc90
pop ecx
pop ecx
test eax, eax
jne 0x4faacb
mov edi, dword [esp + 0x11c]
push 0x28
pop ecx
mov dword [esp + 0x78], ecx
lea eax, [esp + 0x7d]
mov dword [esp + 0x74], eax
lea eax, [esp + 0xed]
mov dword [esp + 0xe4], eax
lea eax, [esp + 0x45]
mov dword [esp + 0x3c], eax
lea eax, [esp + 0xb5]
mov word [esp + 0x7c], bx
mov dword [esp + 0xa8], ebx
mov dword [esp + 0xe8], ecx
mov word [esp + 0xec], bx
mov dword [esp + 0x118], ebx
mov dword [esp + 0x40], ecx
mov word [esp + 0x44], bx
mov dword [esp + 0x70], ebx
mov dword [esp + 0xac], eax
mov dword [esp + 0xb0], ecx
mov word [esp + 0xb4], bx
mov dword [esp + 0xe0], ebx
test edi, edi
jne 0x4fab6f
push str.icudt54l
jmp 0x4fac47
push 0x5c
push edi
call fcn.0051d480
push 0x5c
push edi
mov dword [esp + 0x28], eax
call fcn.0051fc90
mov cl, byte [edi]
add esp, 0x10
mov edx, eax
mov dword [esp + 0x10], edx
test cl, cl
je 0x4fabbe
cmp cl, 0x5c
je 0x4fac3b
cmp cl, 0x2f
je 0x4fac3b
cmp cl, 0x41
jl 0x4fabae
cmp cl, 0x5a
jle 0x4fabb8
cmp cl, 0x61
jl 0x4fabbe
cmp cl, 0x7a
jg 0x4fabbe
cmp byte [edi + 1], 0x3a
je 0x4fac3b
mov eax, dword [esp + 0x18]
cmp eax, edx
jne 0x4fac3f
push 0x2d
push edi
call fcn.0051fc90
mov dword [esp + 0x2c], eax
pop ecx
pop ecx
test eax, eax
je 0x4fac26
lea ecx, [eax + 1]
push ecx
lea ecx, [esp + 0x1c]
call fcn.004f8b5f
push esi
push dword [esp + 0x20]
lea ecx, [esp + 0xb4]
push dword [esp + 0x20]
call fcn.004fefe9
cmp byte [esp + 0xf], bl
je 0x4fac08
mov eax, str.icudt54l
push eax
jmp 0x4fac47
mov eax, dword [esp + 0x24]
lea ecx, [esp + 0x3c]
push esi
sub eax, edi
push eax
push edi
call fcn.004fefe9
cmp dword [esp + 0x10], ebx
jne 0x4fac62
mov edi, dword [esp + 0x3c]
jmp 0x4fac62
lea ecx, [esp + 0x10]
cmp byte [esp + 0xf], bl
je 0x4fac38
mov eax, str.icudt54l
push eax
jmp 0x4fac4b
push edi
jmp 0x4fac4b
mov eax, dword [esp + 0x18]
test eax, eax
je 0x4fac46
inc eax
jmp 0x4fac05
push edi
lea ecx, [esp + 0x14]
call fcn.004f8b5f
push esi
push dword [esp + 0x18]
lea ecx, [esp + 0x44]
push dword [esp + 0x18]
call fcn.004fefe9
push esi
push dword [esp + 0x74]
lea ecx, [esp + 0x7c]
push dword [esp + 0x44]
call fcn.004fefe9
push esi
push dword [esp + 0x74]
lea ecx, [esp + 0xec]
push dword [esp + 0x44]
call fcn.004fefe9
mov eax, dword [esp + 0xa8]
mov dword [esp + 0x10], eax
cmp dword [esp + 0xe0], ebx
je 0x4face4
push esi
push 0x2f
lea ecx, [esp + 0x7c]
call fcn.004fefae
push esi
push dword [esp + 0xe4]
mov ecx, eax
push dword [esp + 0xb4]
call fcn.004fefe9
push esi
push 0x5c
lea ecx, [esp + 0xec]
call fcn.004fefae
push esi
push dword [esp + 0xe4]
mov ecx, eax
push dword [esp + 0xb4]
call fcn.004fefe9
push dword [esp + 0x38]
lea ecx, [esp + 0x28]
call fcn.004f8b5f
push esi
push 0x2f
lea ecx, [esp + 0x7c]
call fcn.004fefae
push esi
push dword [esp + 0x2c]
mov ecx, eax
push dword [esp + 0x2c]
call fcn.004fefe9
push dword [esp + 0x38]
lea ecx, [esp + 0x28]
call fcn.004f8b5f
push esi
push 0x5c
lea ecx, [esp + 0xec]
call fcn.004fefae
push esi
push dword [esp + 0x2c]
mov ecx, eax
push dword [esp + 0x2c]
call fcn.004fefe9
mov eax, dword [esp + 0x20]
test eax, eax
je 0x4fadbf
cmp byte [eax], bl
je 0x4fadbf
push eax
lea ecx, [esp + 0x1c]
call fcn.004f8b5f
push 0x53fbcc
lea ecx, [esp + 0x28]
call fcn.004f8b5f
push esi
push dword [esp + 0x2c]
lea ecx, [esp + 0x7c]
push dword [esp + 0x2c]
call fcn.004fefe9
push esi
push dword [esp + 0x20]
mov ecx, eax
push dword [esp + 0x20]
call fcn.004fefe9
push dword [esp + 0x20]
lea ecx, [esp + 0x1c]
call fcn.004f8b5f
push 0x53fbcc
lea ecx, [esp + 0x28]
call fcn.004f8b5f
push esi
push dword [esp + 0x2c]
lea ecx, [esp + 0xec]
push dword [esp + 0x2c]
call fcn.004fefe9
push esi
push dword [esp + 0x20]
mov ecx, eax
push dword [esp + 0x20]
call fcn.004fefe9
mov eax, dword [esp + 0xe4]
mov ecx, dword [esp + 0x10]
add eax, ecx
mov dword [esp + 0x24], eax
test edi, edi
mov eax, str.icudt54l
cmovne eax, edi
mov dword [esp + 0x18], eax
call fcn.004feeb5
push 4
mov dword [esp + 0x14], eax
pop eax
push eax
push 0x58bd8c
push dword [esp + 0x28]
call fcn.00517bbb
mov edi, dword [esp + 0x44]
add esp, 0xc
test eax, eax
jne 0x4faeb9
push 0xb
push str.zoneinfo64
push edi
call fcn.00517bbb
add esp, 0xc
test eax, eax
je 0x4fae58
push 0xe
push str.timezoneTypes
push edi
call fcn.00517bbb
add esp, 0xc
test eax, eax
je 0x4fae58
push 0xd
push str.windowsZones
push edi
call fcn.00517bbb
add esp, 0xc
test eax, eax
je 0x4fae58
push 0xa
push str.metaZones
push edi
call fcn.00517bbb
add esp, 0xc
test eax, eax
jne 0x4faeb9
mov cl, byte [esp + 0xf]
test cl, cl
je 0x4faebd
push esi
mov edx, 0x4fef41
mov ecx, 0x769078
call fcn.004f9756
pop ecx
mov ecx, 0x53f8ed
cmp dword [esi], ebx
jg 0x4fae83
mov eax, dword [0x769080]
mov edx, dword [eax]
jmp 0x4fae85
mov edx, ecx
cmp byte [edx], bl
je 0x4faeb9
push esi
lea eax, [esp + 0x30]
push eax
push dword [esp + 0x38]
push dword [esp + 0x40]
push edi
push dword [esp + 0x34]
push ecx
push dword [esp + 0x40]
call fcn.004fa850
add esp, 0x20
test eax, eax
jne 0x4fafe1
cmp dword [esi], ebx
jg 0x4fafe1
mov cl, byte [esp + 0xf]
mov eax, dword [0x768ff8]
cmp eax, 2
jne 0x4faf0a
push esi
lea eax, [esp + 0x30]
push eax
push dword [esp + 0x38]
mov eax, dword [esp + 0x24]
push dword [esp + 0x40]
push edi
push dword [esp + 0x34]
push eax
push dword [esp + 0x90]
push ecx
push ecx
call fcn.004fa942
add esp, 0x28
test eax, eax
jne 0x4fafe1
cmp dword [esi], ebx
jg 0x4fafe1
mov eax, dword [0x768ff8]
cmp eax, 2
je 0x4faf0e
test eax, eax
jne 0x4faf5e
mov edx, dword [esp + 0x10]
test edx, edx
je 0x4faf1a
cmp byte [edx], bl
jne 0x4faf22
mov cl, byte [esp + 0xf]
test cl, cl
jne 0x4faf62
mov ecx, dword [esp + 0x3c]
lea eax, [esp + 0x2c]
push esi
push eax
push dword [esp + 0x38]
push dword [esp + 0x40]
push edi
push dword [esp + 0x34]
push dword [esp + 0x30]
push dword [esp + 0x40]
call fcn.004fa850
add esp, 0x20
test eax, eax
jne 0x4fafe1
cmp dword [esi], ebx
jg 0x4fafe1
mov eax, dword [0x768ff8]
mov cl, byte [esp + 0xf]
cmp eax, 1
je 0x4faf6b
test eax, eax
jne 0x4fafa0
push esi
lea eax, [esp + 0x30]
push eax
push dword [esp + 0x38]
push dword [esp + 0x40]
push edi
push dword [esp + 0x34]
push dword [esp + 0x30]
push dword [esp + 0x90]
push ecx
push ecx
call fcn.004fa942
add esp, 0x28
test eax, eax
jne 0x4fafe1
cmp dword [esi], ebx
jg 0x4fafe1
mov eax, dword [0x768ff8]
cmp eax, 3
jne 0x4fb061
push esi
lea eax, [esp + 0x30]
push eax
push dword [esp + 0x38]
push dword [esp + 0x40]
push edi
push dword [esp + 0x34]
push dword [esp + 0x30]
push dword [esp + 0x90]
push ecx
push ecx
mov cl, byte [esp + 0x37]
call fcn.004fa942
add esp, 0x28
test eax, eax
jne 0x4fafe1
cmp dword [esi], ebx
jle 0x4fb069
mov ebx, eax
cmp byte [esp + 0xb4], 0
je 0x4faffa
push dword [esp + 0xac]
call fcn.004f97c6
pop ecx
cmp byte [esp + 0x44], 0
je 0x4fb00b
push dword [esp + 0x3c]
call fcn.004f97c6
pop ecx
cmp byte [esp + 0xec], 0
je 0x4fb022
push dword [esp + 0xe4]
call fcn.004f97c6
pop ecx
cmp byte [esp + 0x7c], 0
je 0x4fb033
push dword [esp + 0x74]
call fcn.004f97c6
pop ecx
cmp byte [esp + 0x124], 0
je 0x4fb04a
push dword [esp + 0x11c]
call fcn.004f97c6
pop ecx
mov ecx, dword [esp + 0x154]
mov eax, ebx
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.00501d03
mov esp, ebp
pop ebp
ret
cmp dword [esi], ebx
jg 0x4fafe3
mov eax, dword [esp + 0x2c]
test eax, eax
push 4
pop ecx
cmovle eax, ecx
mov dword [esi], eax
jmp 0x4fafe3