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

Disassembly:
sub esp, 0x118
mov eax, dword [0x4aa98440]
xor eax, esp
mov dword [esp + 0x114], eax
mov edx, dword [esp + 0x124]
lea eax, [esp + 0x78]
push ebx
mov ebx, dword [esp + 0x12c]
xor ecx, ecx
push ebp
push esi
mov esi, dword [esp + 0x12c]
lea ebp, [esp + 0xe4]
mov dword [esp + 0x28], eax
push edi
mov edi, dword [esp + 0x12c]
mov al, byte [esi + 8]
mov dword [esp + 0x10], edi
mov dword [esp + 0x34], esi
mov dword [esp + 0x24], edx
mov dword [esp + 0x18], ecx
mov dword [esp + 0x30], ecx
mov dword [esp + 0x28], ecx
test al, 0x70
je 0x4a9c1dc0
test al, 0x40
je 0x4a9c1db1
test al, al
jns 0x4a9c1da2
or dword [ebx], 0x80
mov esi, edi
jmp 0x4a9c21e4
push esi
push edi
call sym.icuin58.dll_uprv_decNumberCopy_58
pop ecx
mov esi, edi
jmp 0x4a9c21e3
push ebx
push edx
push ecx
push esi
push edi
call fcn.4a9c2ae1
add esp, 0x14
jmp 0x4a9c1d9b
mov cl, byte [esi + 9]
test cl, cl
jne 0x4a9c1dde
cmp dword [esi], 1
jne 0x4a9c1dde
and dword [edi + 4], 0
mov dword [edi], 1
mov word [edi + 8], 0xc0
jmp 0x4a9c1d9b
test al, al
js 0x4a9c1d95
cmp dword [esi + 4], 0
jne 0x4a9c1e4a
cmp dword [edx], 0x28
jg 0x4a9c1e4a
test cl, cl
jne 0x4a9c1e31
cmp byte [esi + 0xa], 1
jne 0x4a9c1e31
cmp dword [esi], 2
jne 0x4a9c1e31
push 7
pop ecx
lea eax, [esp + 0x54]
push eax
push str.2.302585092994045684017991454684364207601
mov esi, edx
lea edi, [esp + 0x5c]
rep movsd dword es:[edi], dword [esi]
mov esi, dword [esp + 0x18]
push esi
mov dword [esp + 0x6c], 3
call sym.icuin58.dll_uprv_decNumberFromString_58
add esp, 0xc
or dword [ebx], 0x820
jmp 0x4a9c21e4
cmp cl, 2
jne 0x4a9c1e4a
cmp dword [esi], 1
jne 0x4a9c1e4a
push 7
pop ecx
lea eax, [esp + 0x54]
push eax
push str.0.6931471805599453094172321214581765680755
jmp 0x4a9c1e09
mov eax, dword [edx]
push 7
pop edx
mov dword [esp + 0x20], eax
mov ecx, edx
cmp eax, edx
jl 0x4a9c1e5b
mov ecx, eax
cmp dword [esi], ecx
jge 0x4a9c1e67
cmp eax, edx
jge 0x4a9c1e6d
mov eax, edx
jmp 0x4a9c1e69
mov eax, dword [esi]
mov dword [esp + 0x20], eax
lea edi, [eax + 2]
cmp edi, 0x10
jl 0x4a9c1e83
cmp edi, 0x31
jle 0x4a9c1e7e
mov eax, edi
jmp 0x4a9c1e91
cmp edi, 0x10
jge 0x4a9c1e88
push 0x10
pop eax
jmp 0x4a9c1e8a
mov eax, edi
movzx eax, byte [eax + 0x4aa1ba80]
add eax, 0xb
cmp eax, 0x3c
jbe 0x4a9c1eb6
push eax
call sub.icuuc58.dll_uprv_malloc_58
mov dword [esp + 0x34], eax
pop ecx
test eax, eax
jne 0x4a9c1eb4
or dword [ebx], 0x10
mov esi, dword [esp + 0x10]
jmp 0x4a9c21e4
mov ebp, eax
mov ecx, dword [esi]
add ecx, edi
cmp ecx, 0x10
jl 0x4a9c1ec9
cmp ecx, 0x31
jg 0x4a9c1ed3
cmp ecx, 0x10
jge 0x4a9c1ecc
push 0x10
pop ecx
movzx ecx, byte [ecx + 0x4aa1ba80]
add ecx, 0xb
cmp ecx, 0x60
jbe 0x4a9c1efe
push ecx
call sub.icuuc58.dll_uprv_malloc_58
mov edi, eax
mov dword [esp + 0x2c], edi
pop ecx
test edi, edi
jne 0x4a9c1ef8
or dword [ebx], 0x10
mov esi, dword [esp + 0x10]
jmp 0x4a9c21ca
mov dword [esp + 0x2c], edi
jmp 0x4a9c1f05
lea edi, [esp + 0x88]
lea eax, [esp + 0x54]
push 0x40
push eax
call sym.icuin58.dll_uprv_decContextDefault_58
mov eax, dword [esi + 4]
add eax, dword [esi]
push eax
push ebp
call sym.icuin58.dll_uprv_decNumberFromInt32_58
push 0x232279
push edi
call sym.icuin58.dll_uprv_decNumberFromInt32_58
lea eax, [esp + 0x30]
mov dword [edi + 4], 0xfffffffa
push eax
lea eax, [esp + 0x70]
push eax
push edi
push ebp
push ebp
call fcn.4a9c2334
and dword [esp + 0x40], 0
lea eax, [esp + 0x44]
push eax
lea eax, [esp + 0x44]
mov dword [esp + 0x84], 2
push eax
lea eax, [esp + 0x88]
mov dword [esp + 0x94], 5
push eax
push esi
push edi
call fcn.4a9c07a2
and dword [edi + 4], 0
add esp, 0x40
push edi
call fcn.4a9c1be1
pop ecx
cmp eax, 0xa
jge 0x4a9c1f8b
imul eax, eax, 0xa
movzx esi, word [eax*2 + 0x4aa1badc]
mov eax, esi
sar eax, 2
push eax
push edi
call sym.icuin58.dll_uprv_decNumberFromInt32_58
push 3
pop ecx
push 0xfffffffffffffffd
pop eax
and esi, ecx
mov byte [edi + 8], 0x80
sub eax, esi
mov dword [edi + 4], eax
lea eax, [esp + 0x20]
push eax
push 0
lea eax, [esp + 0x64]
mov dword [esp + 0x64], 0x10
push eax
push edi
push ebp
push ebp
mov dword [esp + 0x80], ecx
call fcn.4a9bfa12
mov ecx, dword [esp + 0x44]
lea esi, [esp + 0x74]
add esp, 0x20
mov word [esp + 0x78], 0x100
xor edx, edx
mov dword [esp + 0x70], 1
lea edi, [esp + 0x38]
mov byte [esp + 0x6c], dl
mov eax, dword [ecx + 4]
mov dword [esp + 0x58], eax
mov eax, dword [ecx + 8]
push 7
pop ecx
mov dword [esp + 0x5c], eax
rep movsd dword es:[edi], dword [esi]
mov esi, dword [esp + 0x34]
mov edi, dword [esp + 0x2c]
push 9
pop ecx
mov eax, dword [esi]
mov dword [esp + 0x74], edx
add eax, ecx
mov dword [esp + 0x3c], 0x1e847e
mov dword [esp + 0x40], 0xffe17b82
mov dword [esp + 0x14], ecx
mov dword [esp + 0x54], ecx
mov dword [esp + 0x38], eax
xor byte [ebp + 8], 0x80
lea eax, [esp + 0x18]
push eax
lea eax, [esp + 0x3c]
push eax
push ebp
push edi
call fcn.4a9c13cf
xor byte [ebp + 8], 0x80
lea eax, [esp + 0x28]
push eax
lea eax, [esp + 0x4c]
push eax
push esi
push edi
push edi
call fcn.4a9c2334
lea eax, [esp + 0x3c]
push eax
push 0x80
lea eax, [esp + 0x64]
push eax
lea eax, [esp + 0xa0]
push eax
push edi
push edi
call fcn.4a9bfa12
mov al, byte [edi + 9]
add esp, 0x3c
mov byte [esp + 0x1f], al
test al, al
jne 0x4a9c209d
mov edx, dword [edi]
cmp edx, 1
jne 0x4a9c209d
test byte [edi + 8], 0x70
je 0x4a9c20b7
mov eax, dword [esp + 0x24]
mov ecx, dword [edi + 4]
mov edx, dword [edi]
add ecx, edx
mov eax, dword [eax]
inc eax
add ecx, eax
mov eax, dword [ebp + 4]
add eax, dword [ebp]
cmp eax, ecx
jl 0x4a9c20f3
mov ecx, dword [esp + 0x20]
add ecx, 2
cmp dword [ebp], ecx
je 0x4a9c2172
cmp byte [ebp + 9], 0
jne 0x4a9c20d9
cmp dword [ebp], 1
jne 0x4a9c20d9
test byte [ebp + 8], 0x70
je 0x4a9c213a
cmp byte [esp + 0x1f], 0
jne 0x4a9c20f3
cmp edx, 1
jne 0x4a9c20f3
test byte [edi + 8], 0x70
jne 0x4a9c20f3
mov eax, dword [ebp + 4]
sub eax, ecx
mov dword [edi + 4], eax
lea eax, [esp + 0x18]
push eax
push 0
lea eax, [esp + 0x5c]
push eax
push edi
push ebp
push ebp
call fcn.4a9bfa12
mov eax, dword [esp + 0x38]
add esp, 0x18
mov edx, dword [esp + 0x14]
add eax, 2
cmp edx, eax
je 0x4a9c2039
add edx, edx
mov dword [esp + 0x14], edx
cmp edx, eax
jle 0x4a9c212d
mov edx, eax
mov dword [esp + 0x14], eax
mov eax, dword [esi]
mov dword [esp + 0x54], edx
add eax, edx
jmp 0x4a9c2035
lea eax, [esp + 0x18]
push eax
push 1
lea eax, [esp + 0x5c]
push eax
lea eax, [esp + 0x7c]
push eax
lea eax, [esp + 0x8c]
push esi
push eax
call fcn.4a9c04ed
add esp, 0x18
cmp byte [esp + 0x85], 0
jne 0x4a9c216c
and dword [ebp + 4], 0
jmp 0x4a9c2172
or dword [ebx], 0x820
xor ecx, ecx
inc ecx
cmp byte [ebp + 9], 0
mov dword [esp + 0x14], ecx
jne 0x4a9c2196
cmp dword [ebp], ecx
jne 0x4a9c2196
mov al, byte [ebp + 8]
and al, 0x70
movzx eax, al
neg eax
sbb eax, eax
and eax, ecx
mov dword [esp + 0x14], eax
mov edi, dword [esp + 0x24]
mov esi, dword [esp + 0x10]
push ebx
mov eax, dword [edi]
mov dword [esp + 0x58], eax
lea eax, [esp + 0x18]
push eax
lea eax, [esp + 0x5c]
push eax
push ebp
push esi
call fcn.4a9c07a2
push ebx
lea eax, [esp + 0x2c]
push eax
push edi
push esi
call fcn.4a9c1a4b
mov edi, dword [esp + 0x4c]
add esp, 0x24
mov eax, dword [esp + 0x30]
test eax, eax
je 0x4a9c21d9
push eax
call sub.icuuc58.dll_uprv_free_58
pop ecx
test edi, edi
je 0x4a9c21e4
push edi
call sub.icuuc58.dll_uprv_free_58
pop ecx
mov ecx, dword [esp + 0x124]
mov eax, esi
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.4a9ebf20
add esp, 0x118
ret