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

Disassembly:
push ebp
push edi
push esi
push ebx
sub esp, 0x34c
mov dword [esp + 0x30], eax
movzx eax, byte [edx + 8]
mov dword [esp + 0x14], edx
mov dword [esp + 0x20], ecx
mov dword [esp + 0x64], 0
test al, 0x70
je 0x61bbc860
test al, 0x40
je 0x61bbcea5
test al, al
js 0x61bbce20
mov ecx, dword [esp + 0x14]
mov edi, dword [esp + 0x30]
cmp ecx, edi
je 0x61bbce2d
mov byte [edi + 8], al
mov eax, dword [ecx + 4]
mov dword [edi + 4], eax
mov eax, dword [ecx]
mov dword [edi], eax
movzx eax, byte [ecx + 9]
mov byte [edi + 9], al
mov eax, dword [ecx]
cmp eax, 1
jle 0x61bbce2d
lea esi, [edi + 0xa]
cmp eax, 0x31
mov dword [esp + 0x18], esi
jg 0x61bbc78c
movzx eax, byte [eax + 0x61c157a0]
mov edi, dword [esp + 0x14]
lea ebx, [edi + eax + 9]
lea eax, [edi + 0xa]
cmp ebx, eax
mov dword [esp + 0x14], eax
jbe 0x61bbce2d
lea edx, [edi + 0xb]
mov eax, ebx
mov ebp, edi
add edi, 0xe
sub eax, edx
cmp edi, esi
mov edx, eax
mov eax, dword [esp + 0x30]
setbe cl
mov edi, ecx
lea esi, [eax + 0xe]
cmp esi, dword [esp + 0x14]
setbe cl
mov esi, ecx
mov ecx, edi
mov eax, esi
or cl, al
je 0x61bbdb43
lea esi, [edx + 1]
cmp esi, 0xd
jbe 0x61bbdb43
movzx eax, byte [ebp + 0xa]
mov esi, dword [esp + 0x30]
lea edi, [edx - 1]
sub edx, 5
lea ecx, [ebp + 0xc]
mov dword [esp + 0x14], ebx
shr edx, 2
lea esi, [esi + 0xc]
mov byte [esi - 2], al
movzx eax, byte [ebp + 0xb]
mov byte [esi - 1], al
lea eax, [edx + 1]
xor edx, edx
lea ebp, [eax*4]
mov ebx, dword [ecx + edx*4]
mov dword [esi + edx*4], ebx
add edx, 1
cmp edx, eax
jb 0x61bbc811
add ecx, ebp
add esi, ebp
cmp ebp, edi
mov ebx, dword [esp + 0x14]
je 0x61bbce2d
movzx eax, byte [ecx]
mov byte [esi], al
lea eax, [ecx + 1]
cmp ebx, eax
jbe 0x61bbce2d
movzx eax, byte [ecx + 1]
mov byte [esi + 1], al
lea eax, [ecx + 2]
cmp ebx, eax
jbe 0x61bbce2d
movzx eax, byte [ecx + 2]
mov byte [esi + 2], al
jmp 0x61bbce2d
mov edi, dword [esp + 0x14]
movzx ecx, byte [edi + 9]
test cl, cl
je 0x61bbc944
test al, al
js 0x61bbce20
mov eax, dword [esp + 0x14]
mov eax, dword [eax + 4]
test eax, eax
jne 0x61bbc970
mov eax, dword [esp + 0x20]
mov edx, dword [eax]
cmp edx, 0x28
jg 0x61bbc970
mov eax, dword [esp + 0x14]
mov eax, dword [eax + 8]
mov dword [esp + 0x18], eax
and eax, 0xffff00
cmp eax, 0x10000
mov eax, dword [esp + 0x14]
mov eax, dword [eax]
je 0x61bbdb65
cmp cl, 2
jne 0x61bbc97c
cmp eax, 1
jne 0x61bbc97c
mov edi, dword [esp + 0x20]
mov dword [esp + 0x98], 3
mov eax, dword [edi]
mov dword [esp + 0x8c], eax
mov eax, dword [edi + 4]
mov dword [esp + 0x90], eax
mov eax, dword [edi + 8]
mov dword [esp + 0x94], eax
mov eax, dword [edi + 0x10]
mov dword [esp + 0x9c], eax
mov eax, dword [edi + 0x14]
mov dword [esp + 0xa0], eax
mov eax, dword [edi + 0x18]
mov dword [esp + 4], str.0.6931471805599453094172321214581765680755
mov dword [esp + 0xa4], eax
lea eax, [esp + 0x8c]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x30]
mov dword [esp], eax
call sym.icuin53.dll_uprv_decNumberFromString_53
mov eax, dword [esp + 0x360]
or dword [eax], 0x820
jmp 0x61bbce2d
cmp dword [edi], 1
jne 0x61bbc870
mov eax, dword [esp + 0x30]
mov dword [eax + 4], 0
mov dword [eax], 1
mov byte [eax + 9], 0
mov byte [eax + 8], 0xc0
jmp 0x61bbce2d
mov eax, dword [esp + 0x14]
mov edi, dword [esp + 0x20]
mov eax, dword [eax]
mov edx, dword [edi]
cmp edx, eax
mov ecx, 7
cmovl edx, eax
cmp edx, 7
cmovl edx, ecx
lea edi, [edx + 2]
cmp edi, 0x31
mov dword [esp + 0x1c], edi
jle 0x61bbce40
cmp edi, 0x10
mov edx, 0x10
cmovge edx, edi
add edx, 0xb
mov dword [esp], edx
call sym._uprv_malloc_53
test eax, eax
mov edi, eax
mov dword [esp + 0x3c], eax
je 0x61bbdc18
mov eax, dword [esp + 0x14]
mov eax, dword [eax]
add eax, dword [esp + 0x1c]
cmp eax, 0x31
jg 0x61bbce7a
cmp eax, 0x10
mov edx, 0x10
cmovl eax, edx
movzx eax, byte [eax + 0x61c157a0]
add eax, 0xb
cmp eax, 0x60
jbe 0x61bbce91
mov dword [esp], eax
call sym._uprv_malloc_53
test eax, eax
mov dword [esp + 0x4c], eax
mov ebp, eax
je 0x61bbdbd2
lea eax, [esp + 0x8c]
mov dword [esp + 4], 0x40
mov dword [esp], eax
call sym.icuin53.dll_uprv_decContextDefault_53
mov ebx, dword [esp + 0x14]
mov eax, dword [ebx]
add eax, dword [ebx + 4]
mov dword [esp + 0x18], eax
mov ecx, eax
js 0x61bbd9bf
mov byte [edi + 8], 0
mov dword [edi + 4], 0
mov dword [edi], 1
mov byte [edi + 9], 0
jne 0x61bbd9e3
lea eax, [edi + 9]
mov dword [esp + 0x2c], eax
lea eax, [ebp + 9]
mov ecx, 7
mov byte [ebp + 8], 0
mov dword [ebp + 4], 0
mov dword [ebp], 1
mov edx, eax
mov dword [esp + 0x34], eax
lea eax, [ecx - 1]
mov byte [ebp + 9], 5
mov byte [ebp + 0xa], 8
add edx, eax
mov byte [ebp + 0xb], 5
mov byte [ebp + 0xc], 2
mov byte [ebp + 0xd], 0
mov byte [ebp + 0xe], 3
mov byte [ebp + 0xf], 2
jb 0x61bbcac5
cmp byte [edx], 0
jne 0x61bbcac5
cmp ecx, 1
mov ebx, dword [esp + 0x34]
je 0x61bbcac5
sub edx, 1
mov ecx, eax
cmp ebx, edx
ja 0x61bbcac5
cmp byte [edx], 0
jne 0x61bbcac5
cmp eax, 1
je 0x61bbcac5
sub edx, 1
sub eax, 1
cmp ebx, edx
mov ecx, eax
jbe 0x61bbcaaf
lea eax, [esp + 0x64]
mov dword [ebp], ecx
mov dword [ebp + 4], 0xfffffffa
mov ecx, ebp
mov edx, edi
mov dword [esp + 4], eax
lea eax, [esp + 0x8c]
mov dword [esp], eax
mov eax, edi
call sym._decMultiplyOp
mov ebx, dword [esp + 0x14]
lea edx, [esp + 0x8c]
mov dword [esp + 0x68], 0
mov dword [esp + 0x8c], 2
mov dword [esp + 0x98], 5
movzx eax, byte [ebx + 8]
lea ecx, [ebx + 9]
mov byte [ebp + 8], al
mov eax, dword [ebx + 4]
mov dword [ebp + 4], eax
mov eax, ebx
lea ebx, [esp + 0x64]
mov dword [esp + 8], ebx
lea ebx, [esp + 0x68]
mov dword [esp + 4], ebx
mov eax, dword [eax]
mov dword [esp], eax
mov eax, ebp
call sym._decSetCoeff.isra.3
movzx ecx, byte [ebp + 8]
mov dword [ebp + 4], 0
mov edx, dword [ebp]
mov eax, ecx
shr al, 7
mov byte [esp + 0x18], al
movzx eax, byte [ebp + 9]
test al, al
jne 0x61bbcb6b
cmp edx, 1
je 0x61bbdaf2
cmp edx, 0xa
movzx esi, al
jle 0x61bbd880
and esi, 1
cmp esi, 1
sbb eax, eax
and eax, 0xfffffff6
add eax, 0x14
movzx ecx, word [eax + eax + 0x61c15680]
mov byte [ebp + 8], 0
mov dword [ebp], 1
mov byte [ebp + 9], 0
mov esi, ecx
sar ecx, 2
test ecx, ecx
jne 0x61bbd95a
mov edx, esi
mov eax, 0xfffffffd
mov byte [ebp + 8], pe_nt_image_headers32
and edx, 3
mov ecx, ebp
mov dword [esp + 0x8c], 0x10
sub eax, edx
mov edx, edi
mov dword [esp + 0x98], 3
mov dword [ebp + 4], eax
lea eax, [esp + 0x64]
mov dword [esp + 4], 0
mov dword [esp + 8], eax
lea eax, [esp + 0x8c]
mov dword [esp], eax
mov eax, edi
call sym._decAddOp
mov ebx, dword [esp + 0x20]
mov byte [esp + 0xa4], 0
mov byte [esp + 0x7c], 0
mov dword [esp + 0x78], 0
mov dword [esp + 0x74], 1
mov byte [esp + 0x7d], 1
mov eax, dword [ebx + 4]
mov dword [esp + 0xac], 0x1e847e
mov dword [esp + 0xb0], 0xffe17b82
mov dword [esp + 0x8c], 9
mov dword [esp + 0x18], 9
mov dword [esp + 0x90], eax
mov eax, dword [ebx + 8]
mov dword [esp + 0x94], eax
mov eax, dword [esp + 0x98]
mov dword [esp + 0xb4], eax
mov eax, dword [esp + 0x9c]
mov dword [esp + 0xb8], eax
mov eax, dword [esp + 0xa0]
mov dword [esp + 0xbc], eax
mov eax, dword [esp + 0xa4]
mov dword [esp + 0xc0], eax
mov eax, dword [esp + 0x14]
mov eax, dword [eax]
add eax, 9
mov dword [esp + 0xa8], eax
movzx eax, byte [edi + 8]
mov dword [esp + 0x6c], 0
lea edx, [eax - 0x80]
test dl, 0x70
mov byte [edi + 8], dl
je 0x61bbced5
test dl, 0x40
je 0x61bbd180
test dl, dl
js 0x61bbd160
cmp edi, ebp
je 0x61bbcd20
mov eax, dword [edi + 4]
mov byte [ebp + 8], dl
mov edx, dword [edi]
mov dword [ebp + 4], eax
movzx eax, byte [edi + 9]
cmp edx, 1
mov dword [ebp], edx
mov byte [ebp + 9], al
jle 0x61bbcd20
cmp edx, 0x31
mov eax, edx
jg 0x61bbccfa
movzx eax, byte [edx + 0x61c157a0]
add eax, edi
lea edx, [edi + 0xa]
lea ecx, [eax + 9]
cmp ecx, edx
jbe 0x61bbcd20
mov ebx, edi
lea ecx, [ebp + 0xa]
mov dword [esp + 4], edx
not ebx
add eax, ebx
mov dword [esp], ecx
mov dword [esp + 8], eax
call sym._memcpy
nop
lea eax, [esp + 0x64]
add byte [edi + 8], 0x80
mov ecx, dword [esp + 0x14]
mov edx, ebp
mov dword [esp + 4], eax
lea eax, [esp + 0xa8]
mov dword [esp], eax
mov eax, ebp
call sym._decMultiplyOp
lea eax, [esp + 0x64]
lea ecx, [esp + 0x74]
mov dword [esp + 4], pe_nt_image_headers32
mov edx, ebp
mov dword [esp + 8], eax
lea eax, [esp + 0xa8]
mov dword [esp], eax
mov eax, ebp
call sym._decAddOp
movzx ebx, byte [ebp + 9]
mov ecx, dword [ebp]
test bl, bl
jne 0x61bbcd7e
cmp ecx, 1
je 0x61bbd1a2
mov esi, dword [esp + 0x20]
mov eax, dword [ebp + 4]
mov edx, dword [edi]
add eax, ecx
add eax, dword [esi]
mov esi, dword [edi + 4]
add esi, edx
cmp eax, esi
jge 0x61bbcdc0
cmp dword [esp + 0x1c], edx
je 0x61bbd1c0
cmp edx, 1
jne 0x61bbcdad
cmp byte [edi + 9], 0
je 0x61bbd384
test bl, bl
jne 0x61bbcdc0
cmp ecx, 1
je 0x61bbd410
lea esi, [esi]
lea eax, [esp + 0x64]
mov dword [esp + 4], 0
mov ecx, ebp
mov edx, edi
mov dword [esp + 8], eax
lea eax, [esp + 0x8c]
mov dword [esp], eax
mov eax, edi
call sym._decAddOp
mov esi, dword [esp + 0x1c]
mov ebx, dword [esp + 0x18]
cmp esi, ebx
je 0x61bbcca2
mov eax, ebx
mov ebx, dword [esp + 0x14]
add eax, eax
cmp eax, esi
cmovg eax, esi
mov dword [esp + 0x18], eax
mov dword [esp + 0x8c], eax
add eax, dword [ebx]
mov dword [esp + 0xa8], eax
jmp 0x61bbcca2
mov eax, dword [esp + 0x360]
or dword [eax], 0x80
mov eax, dword [esp + 0x30]
add esp, 0x34c
pop ebx
pop esi
pop edi
pop ebp
ret
cmp edi, 0x10
mov edx, 0x10
cmovge edx, edi
movzx edx, byte [edx + 0x61c157a0]
add edx, 0xb
cmp edx, 0x3c
ja 0x61bbc9aa
add eax, dword [esp + 0x1c]
lea edi, [esp + 0x13c]
mov dword [esp + 0x3c], 0
cmp eax, 0x31
jle 0x61bbc9d3
cmp eax, 0x10
mov edx, 0x10
cmovl eax, edx
add eax, 0xb
cmp eax, 0x60
ja 0x61bbc9f1
lea ebp, [esp + 0x1cc]
mov dword [esp + 0x4c], 0
jmp 0x61bbca07
mov eax, dword [esp + 0x360]
mov edx, dword [esp + 0x14]
xor ecx, ecx
mov dword [esp + 4], eax
mov eax, dword [esp + 0x20]
mov dword [esp], eax
mov eax, dword [esp + 0x30]
call sym._decNaNs.isra.6
mov eax, dword [esp + 0x30]
add esp, 0x34c
pop ebx
pop esi
pop edi
pop ebp
ret
cmp byte [edi + 9], 0
jne 0x61bbd072
cmp dword [edi], 1
je 0x61bbd4a0
mov ebx, dword [esp + 0xa8]
mov byte [esp + 0x120], 0
mov dword [esp + 0x118], 1
mov byte [esp + 0x121], 4
mov eax, ebx
neg eax
test dl, dl
mov dword [esp + 0x11c], eax
js 0x61bbd440
and edx, 0x40
je 0x61bbd0c0
lea eax, [esp + 0xc4]
mov dword [esp + 4], 0x40
mov dword [esp], eax
call sym.icuin53.dll_uprv_decContextDefault_53
mov eax, dword [esp + 0xac]
mov ecx, dword [edi + 4]
mov byte [esp + 0xdc], 0
mov dword [esp + 0xc8], eax
mov eax, dword [esp + 0xb0]
mov dword [esp + 0xcc], eax
mov eax, dword [edi]
lea edx, [ecx + eax]
cmp edx, 8
jle 0x61bbd4c0
cmp byte [edi + 8], 0
mov byte [esp + 0x294], 0
mov dword [esp + 0x290], 0
mov dword [esp + 0x28c], 1
mov byte [esp + 0x295], 2
js 0x61bbdae2
lea ebx, [esp + 0x28c]
lea esi, [esp + 0x22c]
mov eax, 0xb
mov dword [esp + 0x40], 0
mov dword [esp + 0x44], 0
mov dword [esp + 0x24], 0
mov dword [esp + 0x28], ebx
mov dword [esp + 0x38], 8
mov ecx, dword [esp + 0x38]
mov dword [esp + 0xc4], eax
mov dword [esp + 0x38], edi
mov byte [esi + 8], 0
mov dword [esi + 4], 0
mov dword [esi], 1
mov ebx, dword [ecx*4 + 0x61c15760]
mov byte [esi + 9], 1
xor ecx, ecx
mov eax, dword [esp + 0x64]
mov edx, ebx
mov ebx, 1
mov edi, edx
jmp 0x61bbd018
add ebx, 1
test ah, 0x22
je 0x61bbd035
test ah, 2
jne 0x61bbd2d0
cmp byte [esi + 9], 0
jne 0x61bbd035
cmp dword [esi], 1
je 0x61bbd460
add edi, edi
js 0x61bbd2a5
cmp ebx, 0x1f
je 0x61bbd2d0
test ecx, ecx
je 0x61bbd015
lea eax, [esp + 0x64]
mov ecx, esi
mov edx, esi
mov dword [esp + 4], eax
lea eax, [esp + 0xc4]
mov dword [esp], eax
mov eax, esi
call sym._decMultiplyOp
mov eax, dword [esp + 0x64]
mov ecx, 1
jmp 0x61bbd015
mov ecx, dword [esp + 0xa8]
mov byte [esp + 0x120], 0
mov dword [esp + 0x118], 1
mov byte [esp + 0x121], 4
mov eax, ecx
neg eax
test dl, dl
mov dword [esp + 0x11c], eax
jns 0x61bbcf1d
mov eax, ecx
and edx, 0x40
not eax
mov dword [esp + 0x11c], eax
jne 0x61bbcf26
nop
lea esi, [esi]
mov ecx, dword [edi + 4]
cmp ecx, eax
jl 0x61bbd260
mov esi, dword [edi]
mov ebx, ecx
mov edx, 1
sub ebx, eax
mov ecx, dword [esp + 0x2c]
lea eax, [esp + 0x121]
mov dword [esp + 0x24], 1
cmp esi, 0x31
jle 0x61bbdc37
movzx edx, byte [edx + 0x61c157a0]
mov dword [esp + 4], ebx
mov dword [esp], esi
call sym._decUnitCompare
cmp eax, 0x80000000
je 0x61bbd430
imul eax, dword [esp + 0x24]
test eax, eax
js 0x61bbcf26
mov ebx, dword [esp + 0xa8]
sub ebx, 1
mov byte [ebp + 8], 0
mov dword [ebp + 4], 0
mov dword [ebp], 1
mov byte [ebp + 9], 1
mov eax, 1
jne 0x61bbd290
neg ebx
mov dword [ebp], eax
or dword [esp + 0x64], 0x820
mov dword [ebp + 4], ebx
jmp 0x61bbcd20
mov byte [ebp + 8], 0
mov dword [ebp + 4], 0
mov dword [ebp], 1
mov byte [ebp + 9], 0
jmp 0x61bbcd20
lea eax, [esp + 0x64]
xor ecx, ecx
mov edx, edi
mov dword [esp + 4], eax
lea eax, [esp + 0xa8]
mov dword [esp], eax
mov eax, ebp
call sym._decNaNs.isra.6
jmp 0x61bbcd20
test byte [ebp + 8], 0x70
jne 0x61bbcd7e
mov edx, dword [edi]
cmp dword [esp + 0x1c], edx
jne 0x61bbcd9e
nop
lea esi, [esi]
mov ecx, dword [edi + 4]
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x68], 1
movzx edx, byte [edi + 8]
mov edi, dword [esp + 0x30]
mov esi, dword [esp + 0x20]
mov ebx, dword [esi]
mov dword [edi + 4], ecx
mov ecx, dword [esp + 0x360]
mov byte [edi + 8], dl
lea edx, [esp + 0x8c]
mov dword [esp], eax
mov eax, edi
mov dword [esp + 0x8c], ebx
lea ebx, [esp + 0x68]
mov dword [esp + 8], ecx
mov ecx, dword [esp + 0x2c]
mov dword [esp + 4], ebx
call sym._decSetCoeff.isra.3
mov eax, dword [esp + 0x360]
lea ecx, [esp + 0x68]
mov edx, esi
mov dword [esp], eax
mov eax, edi
call sym._decFinalize
mov eax, dword [esp + 0x3c]
test eax, eax
je 0x61bbd23d
mov eax, dword [esp + 0x3c]
mov dword [esp], eax
call sym._uprv_free_53
mov eax, dword [esp + 0x4c]
test eax, eax
je 0x61bbce2d
mov dword [esp], eax
call sym._uprv_free_53
mov eax, dword [esp + 0x30]
add esp, 0x34c
pop ebx
pop esi
pop edi
pop ebp
ret
mov edx, dword [edi]
sub eax, ecx
mov esi, 1
mov ebx, eax
lea ecx, [esp + 0x121]
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x24], 0xffffffff
cmp edx, 0x31
jg 0x61bbd0f9
jmp 0x61bbd0f2
mov eax, dword [esp + 0x34]
mov ecx, ebx
mov edx, 1
call sym._decShiftToMost.part.0
jmp 0x61bbd148
lea eax, [esp + 0x64]
mov ecx, dword [esp + 0x28]
mov edx, esi
mov dword [esp + 4], eax
lea eax, [esp + 0xc4]
mov dword [esp], eax
mov eax, esi
call sym._decMultiplyOp
cmp ebx, 0x1f
jne 0x61bbd04a
lea esi, [esi]
movzx eax, byte [esi + 9]
movzx ebx, byte [esi + 8]
mov edi, dword [esp + 0x38]
mov ecx, dword [esi + 4]
mov edx, dword [esi]
test al, al
mov dword [esp + 0x70], 1
jne 0x61bbd2f6
cmp edx, 1
je 0x61bbd47e
mov eax, dword [esp + 0xa8]
mov dword [ebp + 4], ecx
lea ecx, [esi + 9]
mov byte [ebp + 8], bl
mov dword [esp], edx
lea edx, [esp + 0xc4]
mov dword [esp + 0xc4], eax
lea eax, [esp + 0x64]
mov dword [esp + 8], eax
lea eax, [esp + 0x70]
mov dword [esp + 4], eax
mov eax, ebp
call sym._decSetCoeff.isra.3
lea eax, [esp + 0x64]
lea ecx, [esp + 0x70]
lea edx, [esp + 0xa8]
mov dword [esp], eax
mov eax, ebp
call sym._decFinalize
mov edx, dword [esp + 0x24]
test edx, edx
je 0x61bbd35b
mov eax, dword [esp + 0x24]
mov dword [esp], eax
call sym._uprv_free_53
mov eax, dword [esp + 0x40]
test eax, eax
je 0x61bbd36b
mov dword [esp], eax
call sym._uprv_free_53
mov eax, dword [esp + 0x44]
test eax, eax
je 0x61bbcd20
mov dword [esp], eax
call sym._uprv_free_53
jmp 0x61bbcd20
test byte [edi + 8], 0x70
jne 0x61bbcdad
lea eax, [esp + 0x64]
mov edx, dword [esp + 0x14]
lea ecx, [esp + 0x74]
mov dword [esp + 4], 1
mov dword [esp + 8], eax
lea eax, [esp + 0x8c]
mov dword [esp], eax
lea eax, [esp + 0x28c]
call sym._decCompareOp
cmp byte [esp + 0x295], 0
jne 0x61bbdbf0
mov eax, dword [edi]
mov dword [edi + 4], 0
xor ecx, ecx
cmp byte [edi + 9], 0
mov dword [esp + 0x68], 1
jne 0x61bbd1cf
cmp eax, 1
jne 0x61bbd1cf
movzx edx, byte [edi + 8]
test dl, 0x70
jne 0x61bbd1d3
mov dword [esp + 0x68], 0
jmp 0x61bbd1d3
test byte [ebp + 8], 0x70
jne 0x61bbcdc0
mov eax, dword [edi + 4]
sub eax, dword [esp + 0x1c]
mov dword [ebp + 4], eax
jmp 0x61bbcdc0
or dword [esp + 0x64], 0x10
jmp 0x61bbcd20
cmp dword [edi], 1
mov eax, ebx
not eax
mov dword [esp + 0x11c], eax
je 0x61bbd124
jmp 0x61bbcf1d
movzx edx, byte [esi + 8]
test dl, 0x70
jne 0x61bbd035
mov edi, dword [esp + 0x38]
mov ecx, dword [esi + 4]
mov ebx, edx
mov dword [esp + 0x70], 1
test bl, 0x70
mov edx, 1
jne 0x61bbd2f6
mov dword [esp + 0x70], 0
jmp 0x61bbd2f6
mov byte [ebp + 8], 0
mov dword [ebp + 4], 0
mov dword [ebp], 1
mov byte [ebp + 9], 1
jmp 0x61bbcd20
mov ebx, 8
sub ebx, edx
mov esi, ebx
xor ebx, ebx
cmp eax, 8
setg bl
cmp esi, ebx
cmovle ebx, esi
mov esi, eax
neg esi
sub esi, ebx
add edx, ebx
mov dword [esp + 0x38], edx
js 0x61bbdad3
cmp ecx, esi
je 0x61bbda8e
cmp eax, 0x31
lea edx, [eax + 0xb]
jg 0x61bbd502
movzx edx, byte [eax + 0x61c157a0]
add edx, 0xb
cmp edx, 0x54
jbe 0x61bbda64
mov dword [esp], edx
call sym._uprv_malloc_53
test eax, eax
mov dword [esp + 0x28], eax
mov dword [esp + 0x24], eax
je 0x61bbd430
cmp edi, dword [esp + 0x28]
je 0x61bbdc11
movzx eax, byte [edi + 8]
mov ebx, dword [esp + 0x28]
movzx edx, byte [edi + 9]
mov byte [ebx + 8], al
mov eax, dword [edi + 4]
mov byte [ebx + 9], dl
mov dword [ebx + 4], eax
mov eax, dword [edi]
cmp eax, 1
mov dword [ebx], eax
jle 0x61bbd58b
cmp eax, 0x31
mov edx, eax
jg 0x61bbd55c
movzx edx, byte [eax + 0x61c157a0]
add edx, edi
lea ecx, [edi + 0xa]
lea ebx, [edx + 9]
cmp ebx, ecx
jbe 0x61bbd58b
mov eax, dword [esp + 0x28]
mov ebx, edi
mov dword [esp + 4], ecx
not ebx
add edx, ebx
add eax, 0xa
mov dword [esp + 8], edx
mov dword [esp], eax
call sym._memcpy
mov eax, dword [esp + 0x28]
mov eax, dword [eax]
mov ecx, dword [esp + 0x28]
mov dword [ecx + 4], esi
mov edx, dword [esp + 0xa8]
cmp eax, edx
cmovl eax, edx
add eax, dword [esp + 0x38]
mov dword [esp + 0x54], eax
add eax, 2
mov dword [esp + 0x48], eax
add eax, eax
mov ebx, eax
mov dword [esp + 0x50], eax
add eax, 0xb
cmp ebx, 0x31
jg 0x61bbd5cc
mov eax, dword [esp + 0x48]
movzx eax, byte [eax + eax + 0x61c157a0]
add eax, 0xb
cmp eax, 0xb4
lea esi, [esp + 0x28c]
mov dword [esp + 0x40], 0
ja 0x61bbda9f
mov ecx, dword [esp + 0x48]
mov eax, ecx
add eax, 0xd
cmp ecx, 0x2f
jg 0x61bbd602
mov eax, dword [esp + 0x54]
movzx eax, byte [eax + 0x61c157a4]
add eax, 0xb
cmp eax, 0x60
jbe 0x61bbd946
mov dword [esp], eax
call sym._uprv_malloc_53
test eax, eax
mov dword [esp + 0x44], eax
mov ebx, eax
je 0x61bbdc07
cmp dword [esp + 0x28], ebx
je 0x61bbd68d
mov ecx, dword [esp + 0x28]
movzx eax, byte [ecx + 8]
mov edx, dword [ecx]
cmp edx, 1
mov dword [ebx], edx
mov byte [ebx + 8], al
mov eax, dword [ecx + 4]
mov dword [ebx + 4], eax
movzx eax, byte [ecx + 9]
mov byte [ebx + 9], al
jle 0x61bbd68d
cmp edx, 0x31
mov eax, edx
jg 0x61bbd656
movzx eax, byte [edx + 0x61c157a0]
mov edx, dword [esp + 0x28]
add eax, edx
lea ecx, [eax + 9]
mov dword [esp + 0x58], eax
lea eax, [edx + 0xa]
cmp ecx, eax
mov dword [esp + 0x5c], eax
jbe 0x61bbd68d
mov eax, dword [esp + 0x58]
not edx
lea ecx, [ebx + 0xa]
mov dword [esp], ecx
add eax, edx
mov dword [esp + 8], eax
mov eax, dword [esp + 0x5c]
mov dword [esp + 4], eax
call sym._memcpy
lea eax, [esp + 0xe0]
mov byte [esi + 8], 0
mov dword [esi + 4], 0
mov dword [esi], 1
mov byte [esi + 9], 1
mov dword [esp + 4], 0x40
mov dword [esp], eax
mov byte [esp + 0x120], 0
mov dword [esp + 0x11c], 0
mov dword [esp + 0x118], 1
mov byte [esp + 0x121], 2
mov byte [esp + 0x88], 0
mov dword [esp + 0x84], 0
mov dword [esp + 0x80], 1
mov byte [esp + 0x89], 1
call sym.icuin53.dll_uprv_decContextDefault_53
mov eax, dword [esp + 0xe0]
mov dword [esp + 0xfc], eax
mov eax, dword [esp + 0xe4]
mov dword [esp + 0x100], eax
mov eax, dword [esp + 0xe8]
mov dword [esp + 0xe8], 0xc4653601
mov dword [esp + 0x104], eax
mov eax, dword [esp + 0xec]
mov dword [esp + 0x108], eax
mov eax, dword [esp + 0xf0]
mov dword [esp + 0x10c], eax
mov eax, dword [esp + 0xf4]
mov dword [esp + 0x110], eax
mov eax, dword [esp + 0xf8]
mov dword [esp + 0x114], eax
mov eax, dword [esp + 0x50]
mov dword [esp + 0x50], ebp
mov dword [esp + 0xc4], eax
mov eax, dword [esp + 0x48]
mov dword [esp + 0x48], edi
mov dword [esp + 0xe0], eax
mov ebp, eax
jmp 0x61bbd7cf
lea eax, [esp + 0x6c]
lea edx, [esp + 0x118]
lea ecx, [esp + 0x80]
mov dword [esp + 4], 0
mov dword [esp + 8], eax
lea eax, [esp + 0xfc]
mov dword [esp], eax
mov eax, edx
call sym._decAddOp
lea eax, [esp + 0x64]
mov ecx, ebx
mov edx, esi
mov dword [esp + 4], 0
mov dword [esp + 8], eax
lea eax, [esp + 0xc4]
mov dword [esp], eax
mov eax, esi
call sym._decAddOp
lea eax, [esp + 0x6c]
mov ecx, dword [esp + 0x28]
mov edx, ebx
mov dword [esp + 4], eax
lea eax, [esp + 0xe0]
mov dword [esp], eax
mov eax, ebx
call sym._decMultiplyOp
lea eax, [esp + 0x6c]
lea ecx, [esp + 0x118]
mov edx, ebx
mov dword [esp + 4], pe_nt_image_headers32
mov dword [esp + 8], eax
lea eax, [esp + 0xe0]
mov dword [esp], eax
mov eax, ebx
call sym._decDivideOp
mov edx, dword [esi]
mov ecx, dword [esi + 4]
mov edi, dword [ebx + 4]
add edi, dword [ebx]
lea eax, [edx + ecx]
add edi, ebp
cmp edi, eax
jge 0x61bbd7a0
cmp ebp, edx
jg 0x61bbd7a0
mov eax, dword [esp + 0x38]
mov edi, dword [esp + 0x48]
mov ebp, dword [esp + 0x50]
test eax, eax
jne 0x61bbda7c
movzx eax, byte [esi + 9]
movzx ebx, byte [esi + 8]
jmp 0x61bbd2e1
cmp edx, 1
jle 0x61bbdc50
movzx eax, byte [ebp + 0xa]
cmp edx, 2
lea eax, [eax + eax*4]
lea ebx, [esi + eax*2]
je 0x61bbd927
movzx eax, byte [ebp + 0xb]
imul eax, eax, 0x64
add ebx, eax
cmp edx, 3
je 0x61bbd927
movzx eax, byte [ebp + 0xc]
imul eax, eax, 0x3e8
add ebx, eax
cmp edx, 4
je 0x61bbd927
movzx eax, byte [ebp + 0xd]
imul eax, eax, 0x2710
add ebx, eax
cmp edx, 5
je 0x61bbd927
movzx eax, byte [ebp + 0xe]
imul eax, eax, 0x186a0
add ebx, eax
cmp edx, 6
je 0x61bbd927
movzx eax, byte [ebp + 0xf]
imul eax, eax, 0xf4240
add ebx, eax
cmp edx, 7
je 0x61bbd927
movzx eax, byte [ebp + 0x10]
imul eax, eax, 0x989680
add ebx, eax
cmp edx, 8
je 0x61bbd927
movzx eax, byte [ebp + 0x11]
imul eax, eax, 0x5f5e100
add eax, ebx
cmp edx, 9
mov ebx, eax
je 0x61bbd927
movzx ecx, byte [ebp + 0x12]
imul ebx, ecx, 0x3b9aca00
add ebx, eax
cmp edx, 0xa
je 0x61bbdb07
movzx edx, byte [esp + 0x18]
mov eax, edx
neg eax
xor ebx, eax
lea eax, [ebx + edx]
cmp eax, 9
jle 0x61bbdc27
sub eax, 0xa
jmp 0x61bbcb85
lea ebx, [esp + 0x22c]
mov dword [esp + 0x44], 0
jmp 0x61bbd621
mov ebx, dword [esp + 0x34]
nop
mov eax, 0xcccccccd
add ebx, 1
mul ecx
shr edx, 3
lea eax, [edx + edx*4]
add eax, eax
sub ecx, eax
mov byte [ebx - 1], cl
test edx, edx
mov ecx, edx
jne 0x61bbd960
mov eax, dword [esp + 0x34]
sub ebx, eax
lea edx, [ebx - 1]
add eax, edx
jb 0x61bbd9b7
cmp byte [eax], 0
jne 0x61bbd9b7
cmp ebx, 1
mov ecx, dword [esp + 0x34]
je 0x61bbd9b7
sub eax, 1
mov ebx, edx
cmp ecx, eax
ja 0x61bbd9b7
cmp byte [eax], 0
jne 0x61bbd9b7
cmp edx, 1
je 0x61bbd9b7
sub eax, 1
sub edx, 1
cmp ecx, eax
mov ebx, edx
jbe 0x61bbd9a1
mov dword [ebp], ebx
jmp 0x61bbcba9
neg ecx
cmp eax, 0x80000000
mov eax, 0x80000000
cmove ecx, eax
mov byte [edi + 8], 0
mov dword [edi + 4], 0
mov dword [edi], 1
mov byte [edi + 9], 0
lea eax, [edi + 9]
mov esi, 0xcccccccd
mov dword [esp + 0x24], eax
mov ebx, eax
mov eax, ecx
add ebx, 1
mul esi
shr edx, 3
lea eax, [edx + edx*4]
add eax, eax
sub ecx, eax
mov byte [ebx - 1], cl
test edx, edx
mov ecx, edx
jne 0x61bbd9f1
mov eax, dword [esp + 0x24]
sub ebx, eax
lea edx, [ebx - 1]
add eax, edx
jb 0x61bbda45
cmp byte [eax], 0
jne 0x61bbda45
cmp ebx, 1
mov ecx, dword [esp + 0x24]
je 0x61bbda45
sub eax, 1
mov ebx, edx
cmp ecx, eax
ja 0x61bbda45
cmp byte [eax], 0
jne 0x61bbda45
cmp edx, 1
je 0x61bbda45
sub eax, 1
sub edx, 1
cmp ecx, eax
mov ebx, edx
jbe 0x61bbda2f
mov eax, dword [esp + 0x18]
mov dword [edi], ebx
test eax, eax
jns 0x61bbdc43
mov eax, dword [esp + 0x24]
mov byte [edi + 8], pe_nt_image_headers32
mov dword [esp + 0x2c], eax
jmp 0x61bbca55
lea eax, [esp + 0x178]
mov dword [esp + 0x24], 0
mov dword [esp + 0x28], eax
jmp 0x61bbd523
mov eax, dword [esp + 0x54]
mov dword [esp + 0x28], esi
mov esi, ebx
add eax, 4
jmp 0x61bbcfd9
mov dword [esp + 0x28], edi
mov dword [esp + 0x24], 0
jmp 0x61bbd592
mov dword [esp], eax
call sym._uprv_malloc_53
test eax, eax
mov dword [esp + 0x40], eax
mov esi, eax
jne 0x61bbd5e6
mov eax, dword [esp + 0x24]
or dword [esp + 0x64], 0x10
test eax, eax
je 0x61bbcd20
mov dword [esp + 0x44], 0
jmp 0x61bbd34f
add esi, edx
mov dword [esp + 0x38], 0
jmp 0x61bbd4e8
mov dword [esp + 0x290], 0xfffffffe
jmp 0x61bbcfa2
and ecx, 0x70
mov eax, 0xfffffff6
je 0x61bbcb85
xor ebx, ebx
jmp 0x61bbd927
mov eax, ebx
cdq
idiv dword [0x61c15784]
cmp eax, ecx
jne 0x61bbcb77
cmp ebx, 0x773593fd
jle 0x61bbdb2b
cmp byte [esp + 0x18], 0
jne 0x61bbcb77
cmp ebx, 0x3b9ac9ff
setg al
cmp byte [esp + 0x18], al
jb 0x61bbcb77
jmp 0x61bbd927
mov ecx, dword [esp + 0x18]
mov eax, dword [esp + 0x14]
nop
lea esi, [esi]
movzx edx, byte [eax]
add eax, 1
add ecx, 1
mov byte [ecx - 1], dl
cmp eax, ebx
jne 0x61bbdb50
jmp 0x61bbce2d
cmp eax, 2
mov dword [esp + 0x18], eax
jne 0x61bbc8b7
mov edi, dword [esp + 0x20]
mov dword [esp + 0x8c], edx
mov dword [esp + 0x98], 3
mov eax, dword [edi + 4]
mov dword [esp + 0x90], eax
mov eax, dword [edi + 8]
mov dword [esp + 0x94], eax
mov eax, dword [edi + 0x10]
mov dword [esp + 0x9c], eax
mov eax, dword [edi + 0x14]
mov dword [esp + 0xa0], eax
mov eax, dword [edi + 0x18]
mov dword [esp + 4], str.2.302585092994045684017991454684364207601
mov dword [esp + 0xa4], eax
lea eax, [esp + 0x8c]
mov dword [esp + 8], eax
jmp 0x61bbc926
mov eax, dword [esp + 0x360]
or dword [eax], 0x10
mov eax, dword [esp + 0x3c]
test eax, eax
jne 0x61bbd231
jmp 0x61bbce2d
mov eax, dword [esp + 0x360]
mov ecx, dword [edi + 4]
or dword [eax], 0x820
mov eax, dword [edi]
jmp 0x61bbd3d5
or dword [esp + 0x64], 0x10
jmp 0x61bbd347
mov eax, dword [edi]
jmp 0x61bbd58b
mov eax, dword [esp + 0x360]
or dword [eax], 0x10
jmp 0x61bbce2d
lea edx, [eax*8]
lea eax, [edx + eax*2 - 0xa]
jmp 0x61bbcb85
movzx esi, byte [esi + 0x61c157a0]
jmp 0x61bbd0f2
mov eax, dword [esp + 0x24]
mov dword [esp + 0x2c], eax
jmp 0x61bbca55
mov ebx, esi
jmp 0x61bbd927