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

Disassembly:
push ebp
push edi
push esi
push ebx
sub esp, 0x10c
mov ebp, dword [esp + 0x128]
mov ebx, dword [esp + 0x124]
cmp dword [ebx], 1
jle 0x4eba79
mov dword [esp + 4], str.Tcl_AppendFormatToObj
mov dword [esp], 0x60db7c
call fcn.00508428
mov ebx, dword [esp + 0x124]
mov ecx, dword [ebx + 4]
test ecx, ecx
je 0x4ecd16
mov eax, dword [ebx + 8]
mov dword [esp + 0x98], eax
mov dword [esp + 0x34], 0x7fffffff
sub dword [esp + 0x34], eax
mov esi, ebp
mov dword [esp + 0x5c], 0
mov dword [esp + 0x64], 0
mov dword [esp + 0x44], 0
xor ebx, ebx
lea edi, [esp + 0x96]
cmp byte [ebp], 0
je 0x4ebaeb
mov dword [esp + 4], edi
mov dword [esp], ebp
call fcn.0050cf60
add ebp, eax
cmp word [esp + 0x96], 0x25
je 0x4ebb40
add ebx, eax
cmp byte [ebp], 0
jne 0x4ebaca
test ebx, ebx
je 0x4ec7bd
cmp dword [esp + 0x34], ebx
jge 0x4ed00a
mov eax, 0x60dc6c
mov edx, dword [esp + 0x120]
test edx, edx
jne 0x4ec3f8
lea esi, [esi]
mov eax, dword [esp + 0x98]
mov dword [esp + 4], eax
mov ebx, dword [esp + 0x124]
mov dword [esp], ebx
call fcn.004eb04c
mov eax, 1
add esp, 0x10c
pop ebx
pop esi
pop edi
pop ebp
ret
test ebx, ebx
je 0x4ebb65
cmp ebx, dword [esp + 0x34]
jg 0x4ebafd
mov dword [esp + 8], ebx
mov dword [esp + 4], esi
mov eax, dword [esp + 0x124]
mov dword [esp], eax
call fcn.004eb610
sub dword [esp + 0x34], ebx
mov dword [esp + 4], edi
mov dword [esp], ebp
call fcn.0050cf60
mov dword [esp + 0x18], eax
mov ax, word [esp + 0x96]
cmp ax, 0x25
je 0x4ebd3c
movzx eax, al
sub eax, 0x30
cmp eax, 9
jbe 0x4ebd58
mov eax, dword [esp + 0x64]
test eax, eax
jne 0x4ed07a
mov dword [esp + 0x5c], 1
mov ebx, dword [esp + 0x44]
cmp dword [esp + 0x12c], ebx
jle 0x4ebdbb
xor esi, esi
xor ebx, ebx
mov dword [esp + 0x58], 0
mov dword [esp + 0x38], 0
mov dword [esp + 0x4c], 0
mov eax, dword [esp + 0x18]
nop
mov cx, word [esp + 0x96]
lea edx, [ecx - 0x20]
cmp dx, 0x10
ja case.0x4ebbf0.1
movzx edx, dx
jmp dword [edx*4 + 0x60dd4c]
mov dword [esp + 0x18], eax
mov eax, ecx
mov dword [esp + 0xa0], 0
movzx edx, cl
sub edx, 0x30
cmp edx, 9
jbe 0x4ebdcc
cmp ax, 0x2a
je 0x4ec420
xor eax, eax
cmp dword [esp + 0x34], eax
jl 0x4ebafd
mov dword [esp + 0xa4], 0
movzx eax, word [esp + 0x96]
cmp ax, 0x2e
je 0x4ec500
mov dword [esp + 0x68], 0
movzx edx, al
sub edx, 0x30
cmp edx, 9
jbe 0x4ebe14
cmp ax, 0x2a
je 0x4ec490
cmp ax, 0x68
je 0x4ebe5f
cmp ax, 0x6c
je 0x4ec52c
mov dword [esp + 0x48], 0
mov dword [esp + 0x60], 0
mov dword [esp + 0x50], 0
mov edx, dword [esp + 0x44]
mov ecx, dword [esp + 0x130]
mov edx, dword [ecx + edx*4]
mov dword [esp + 0x40], edx
cmp ax, 0x69
je 0x4ebe98
cmp ax, 0x78
jbe 0x4ebd4c
mov edx, dword [esp + 0x120]
test edx, edx
je 0x4ebb14
mov dword [esp + 4], eax
mov dword [esp], str.bad_field_specifier___c_
call fcn.004eba24
mov dword [esp + 4], eax
mov ebx, dword [esp + 0x120]
mov dword [esp], ebx
call fcn.004e09e4
jmp 0x4ebb14
mov dword [esp + 0x58], 1
add ebp, eax
mov dword [esp + 4], edi
mov dword [esp], ebp
call fcn.0050cf60
jmp 0x4ebbdc
mov dword [esp + 0x4c], 1
jmp 0x4ebd00
mov esi, 1
jmp 0x4ebd00
mov dword [esp + 0x38], 1
jmp 0x4ebd00
mov ebx, 1
jmp 0x4ebd00
mov ebx, dword [esp + 0x18]
mov esi, ebp
add ebp, ebx
jmp 0x4ebac4
movzx edx, ax
jmp dword [edx*4 + 0x60dd90]
mov dword [esp + 8], 0xa
lea eax, [esp + 0x9c]
mov dword [esp + 4], eax
mov dword [esp], ebp
call sub.msvcrt.dll_strtoul
mov edx, dword [esp + 0x9c]
cmp byte [edx], 0x24
jne 0x4ebb96
dec eax
mov dword [esp + 0x44], eax
lea ebp, [edx + 1]
mov dword [esp + 4], edi
mov dword [esp], ebp
call fcn.0050cf60
mov dword [esp + 0x18], eax
mov edx, dword [esp + 0x5c]
test edx, edx
jne 0x4ed07a
mov eax, dword [esp + 0x44]
test eax, eax
mov dword [esp + 0x64], 1
jns 0x4ebbaa
mov ebx, dword [esp + 0x64]
mov eax, dword [ebx*4 + 0x60e26c]
jmp 0x4ec3e9
mov dword [esp + 8], 0xa
lea eax, [esp + 0x9c]
mov dword [esp + 4], eax
mov dword [esp], ebp
call sub.msvcrt.dll_strtoul
mov dword [esp + 0xa0], eax
mov ebp, dword [esp + 0x9c]
mov dword [esp + 4], edi
mov dword [esp], ebp
call fcn.0050cf60
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0xa0]
jmp 0x4ebc24
mov dword [esp + 8], 0xa
lea eax, [esp + 0x9c]
mov dword [esp + 4], eax
mov dword [esp], ebp
call sub.msvcrt.dll_strtoul
mov dword [esp + 0xa4], eax
mov ebp, dword [esp + 0x9c]
mov dword [esp + 4], edi
mov dword [esp], ebp
call fcn.0050cf60
mov dword [esp + 0x18], eax
movzx eax, word [esp + 0x96]
cmp ax, 0x68
jne 0x4ebc76
add ebp, dword [esp + 0x18]
mov dword [esp + 4], edi
mov dword [esp], ebp
call fcn.0050cf60
mov dword [esp + 0x18], eax
movzx eax, word [esp + 0x96]
mov dword [esp + 0x48], 0
mov dword [esp + 0x60], 0
mov dword [esp + 0x50], 1
jmp 0x4ebc98
mov word [esp + 0x96], 0x64
mov eax, dword [esp + 0x48]
test eax, eax
je 0x4ebf06
lea eax, [esp + 0xc4]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 4], eax
mov edx, dword [esp + 0x120]
mov dword [esp], edx
call fcn.004de4d4
test eax, eax
jne 0x4ebb14
mov dword [esp + 4], 0
lea ecx, [esp + 0xc4]
mov dword [esp], ecx
call fcn.0053d480
xor edx, edx
inc eax
sete dl
mov word [esp + 0x6c], 0
jmp 0x4ebf68
mov eax, dword [esp + 0x48]
test eax, eax
jne 0x4ed028
mov eax, dword [esp + 0x60]
test eax, eax
jne 0x4ec9a3
mov eax, dword [esp + 0x40]
cmp dword [eax + 0xc], 0x5e01f0
je 0x4ec7c4
lea edx, [esp + 0xa8]
mov dword [esp + 8], edx
mov eax, dword [esp + 0x40]
mov dword [esp + 4], eax
mov dword [esp], 0
call fcn.004dde74
test eax, eax
jne 0x4ecc9c
mov edx, dword [esp + 0xa8]
mov eax, dword [esp + 0x50]
test eax, eax
je 0x4ec976
mov word [esp + 0x6c], dx
movsx edx, dx
shr edx, 0x1f
mov dword [esp + 0x1c], edx
call fcn.004dd0d0
mov dword [esp + 0x40], eax
inc dword [eax]
mov edx, dword [esp + 0x1c]
test edx, edx
jne 0x4ec854
test esi, esi
jne 0x4ec854
test ebx, ebx
jne 0x4ec854
mov bx, word [esp + 0x96]
mov word [esp + 0x28], bx
mov dword [esp + 0x70], 0x7fffffff
mov eax, dword [esp + 0x38]
test eax, eax
je 0x4ebfd4
cmp word [esp + 0x28], 0x6f
je 0x4ecc56
cmp word [esp + 0x28], 0x78
je 0x4ecc23
cmp word [esp + 0x28], 0x58
je 0x4ecc23
mov eax, dword [esp + 0x28]
sub eax, 0x58
cmp ax, 0x20
ja case.0x4ebfe8.1
movzx eax, ax
jmp dword [eax*4 + 0x60df74]
mov eax, dword [esp + 0x68]
test eax, eax
jne 0x4ec7ed
mov eax, dword [esp + 0xa0]
test eax, eax
mov dword [esp + 0x48], 0
jle 0x4ed306
lea edx, [esp + 0xac]
mov dword [esp + 0x38], edx
mov eax, dword [esp + 0x40]
mov dword [esp], eax
call fcn.004ead80
mov esi, eax
mov eax, dword [esp + 0x4c]
test eax, eax
je 0x4ec1e1
nop
mov edx, dword [esp + 0x38]
mov dword [esp + 4], edx
mov eax, dword [esp + 0x40]
mov dword [esp], eax
call fcn.004dd5bc
mov ebx, dword [esp + 0x34]
cmp ebx, dword [esp + 0xac]
jl 0x4ed138
mov eax, dword [esp + 0x40]
mov dword [esp + 4], eax
mov ebx, dword [esp + 0x124]
mov dword [esp], ebx
call fcn.004eb710
mov eax, dword [esp + 0xac]
sub dword [esp + 0x34], eax
mov ecx, dword [esp + 0x48]
test ecx, ecx
je 0x4ec0a0
mov eax, dword [esp + 0x40]
mov eax, dword [eax]
mov dword [esp + 0x20], eax
dec eax
mov edx, dword [esp + 0x40]
mov dword [edx], eax
test eax, eax
jle 0x4ecc8f
mov eax, dword [esp + 0xa0]
test eax, eax
jle 0x4ec83c
cmp esi, eax
jge 0x4ec83c
mov ecx, esi
sub ecx, eax
add dword [esp + 0x34], ecx
mov eax, dword [esp + 0x18]
mov dword [esp + 0x40], eax
mov ebx, dword [esp + 0x58]
mov dword [esp + 0x28], ebp
mov ebp, esi
mov esi, dword [esp + 0x124]
jmp 0x4ec103
mov edx, 0x60dc6a
mov dword [esp + 8], 1
mov dword [esp + 4], edx
mov dword [esp], esi
call fcn.004eb610
inc ebp
cmp dword [esp + 0xa0], ebp
jle 0x4ec830
test ebx, ebx
jne 0x4ec0dc
mov edx, str.__0d
jmp 0x4ec0e1
mov eax, dword [esp + 0x40]
cmp dword [eax + 0xc], 0x5e01f0
je 0x4ec7d3
lea ebx, [esp + 0xac]
mov dword [esp + 0x38], ebx
mov dword [esp + 8], ebx
mov eax, dword [esp + 0x40]
mov dword [esp + 4], eax
mov ebx, dword [esp + 0x120]
mov dword [esp], ebx
call fcn.004de10c
test eax, eax
jne 0x4ebb14
mov eax, dword [esp + 0xac]
lea edx, [esp + 0xc4]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.0050ce60
mov dword [esp + 4], eax
lea ecx, [esp + 0xc4]
mov dword [esp], ecx
call fcn.004eaca8
mov dword [esp + 0x40], eax
inc dword [eax]
mov bx, word [esp + 0x96]
mov word [esp + 0x28], bx
mov dword [esp + 0x48], 1
mov esi, 0xffffffff
cmp word [esp + 0x28], 0x47
je 0x4ec3b8
cmp word [esp + 0x28], 0x58
je 0x4ec3b8
cmp word [esp + 0x28], 0x45
je 0x4ec3b8
mov eax, dword [esp + 0xa0]
test eax, eax
jle 0x4ec038
test esi, esi
js 0x4ec01d
mov eax, dword [esp + 0x4c]
test eax, eax
jne 0x4ec038
mov eax, dword [esp + 0xa0]
cmp esi, eax
jge 0x4ec038
mov edx, esi
sub edx, eax
add dword [esp + 0x34], edx
mov eax, dword [esp + 0x18]
mov dword [esp + 0x28], eax
mov ebx, dword [esp + 0x58]
mov dword [esp + 0x4c], ebp
mov ebp, esi
mov esi, dword [esp + 0x124]
jmp 0x4ec23b
mov edx, str.__0d
mov dword [esp + 8], 1
mov dword [esp + 4], edx
mov dword [esp], esi
call fcn.004eb610
inc ebp
cmp dword [esp + 0xa0], ebp
jle 0x4ec87c
test ebx, ebx
je 0x4ec214
mov edx, 0x60dc6a
jmp 0x4ec219
lea eax, [esp + 0xb8]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 4], eax
mov edx, dword [esp + 0x120]
mov dword [esp], edx
call fcn.004ddb18
test eax, eax
jne 0x4ebb14
mov byte [esp + 0xc4], 0x25
mov eax, dword [esp + 0x4c]
test eax, eax
je 0x4ec56f
mov byte [esp + 0xc5], 0x2d
lea edx, [esp + 0xc6]
mov eax, dword [esp + 0x38]
test eax, eax
je 0x4ec29f
mov byte [edx], 0x23
inc edx
mov eax, dword [esp + 0x58]
test eax, eax
je 0x4ec2ab
mov byte [edx], 0x30
inc edx
test ebx, ebx
je 0x4ec2b3
mov byte [edx], 0x20
inc edx
test esi, esi
je 0x4ec2bb
mov byte [edx], 0x2b
inc edx
mov eax, dword [esp + 0xa0]
test eax, eax
jne 0x4eccd6
mov esi, 0x140
mov ecx, dword [esp + 0x68]
test ecx, ecx
je 0x4ec318
mov byte [edx], 0x2e
inc edx
mov eax, dword [esp + 0xa4]
mov dword [esp + 8], eax
mov dword [esp + 4], 0x60dd2f
mov dword [esp], edx
mov dword [esp + 0x1c], edx
call sub.msvcrt.dll_sprintf
mov edx, dword [esp + 0x1c]
add edx, eax
mov ecx, dword [esp + 0xa4]
mov eax, 0x7fffffff
sub eax, esi
cmp eax, ecx
jl 0x4ebafd
add esi, ecx
mov cl, byte [esp + 0x96]
mov byte [edx], cl
mov byte [edx + 1], 0
call fcn.004dd0d0
mov dword [esp + 0x40], eax
mov dword [esp + 4], esi
mov dword [esp], eax
call fcn.004eb1f0
test eax, eax
je 0x4ebafd
mov ebx, dword [esp + 0x40]
mov eax, dword [ebx + 4]
test eax, eax
je 0x4ed299
fld qword [esp + 0xb8]
fstp qword [esp + 8]
lea edx, [esp + 0xc4]
mov dword [esp + 4], edx
mov dword [esp], eax
call sub.msvcrt.dll_sprintf
mov dword [esp + 4], eax
mov eax, dword [esp + 0x40]
mov dword [esp], eax
call fcn.004eb1f0
test eax, eax
je 0x4ebafd
mov bx, word [esp + 0x96]
mov word [esp + 0x28], bx
mov dword [esp + 0x48], 1
mov esi, 0xffffffff
lea edx, [esp + 0xac]
mov dword [esp + 0x38], edx
cmp word [esp + 0x28], 0x47
jne 0x4ec1a6
mov ecx, dword [esp + 0x40]
mov eax, dword [ecx + 4]
test eax, eax
je 0x4ed06d
mov dword [esp], eax
call fcn.0050d3e8
mov dword [esp + 4], eax
mov eax, dword [esp + 0x40]
mov dword [esp], eax
call fcn.004eb04c
jmp 0x4ec1be
mov eax, str.format_string_ended_in_middle_of_field_specifier
mov edx, dword [esp + 0x120]
test edx, edx
je 0x4ebb14
mov dword [esp + 4], 0xffffffff
mov dword [esp], eax
call fcn.004eaca8
mov dword [esp + 4], eax
mov ebx, dword [esp + 0x120]
mov dword [esp], ebx
call fcn.004e09e4
jmp 0x4ebb14
mov eax, dword [esp + 0x12c]
dec eax
cmp eax, dword [esp + 0x44]
jle 0x4ebdbb
mov edx, dword [esp + 0x44]
mov ecx, dword [esp + 0x130]
mov eax, dword [ecx + edx*4]
cmp dword [eax + 0xc], 0x5e01f0
je 0x4ec985
lea edx, [esp + 0xa0]
mov dword [esp + 8], edx
mov dword [esp + 4], eax
mov eax, dword [esp + 0x120]
mov dword [esp], eax
call fcn.004de10c
test eax, eax
jne 0x4ebb14
mov eax, dword [esp + 0xa0]
test eax, eax
js 0x4ec9e0
inc dword [esp + 0x44]
add ebp, dword [esp + 0x18]
jmp 0x4ebdf5
mov eax, dword [esp + 0x12c]
dec eax
cmp dword [esp + 0x44], eax
jge 0x4ebdbb
mov edx, dword [esp + 0x44]
mov ecx, dword [esp + 0x130]
mov eax, dword [ecx + edx*4]
cmp dword [eax + 0xc], 0x5e01f0
je 0x4ec994
lea edx, [esp + 0xa4]
mov dword [esp + 8], edx
mov dword [esp + 4], eax
mov eax, dword [esp + 0x120]
mov dword [esp], eax
call fcn.004de10c
test eax, eax
jne 0x4ebb14
mov eax, dword [esp + 0xa4]
test eax, eax
js 0x4ec9f6
inc dword [esp + 0x44]
add ebp, dword [esp + 0x18]
jmp 0x4ebe3d
add ebp, dword [esp + 0x18]
mov dword [esp + 4], edi
mov dword [esp], ebp
call fcn.0050cf60
mov dword [esp + 0x18], eax
movzx eax, word [esp + 0x96]
mov dword [esp + 0x68], 1
jmp 0x4ebc53
add ebp, dword [esp + 0x18]
mov dword [esp + 4], edi
mov dword [esp], ebp
call fcn.0050cf60
mov dword [esp + 0x18], eax
movzx eax, word [esp + 0x96]
cmp ax, 0x6c
je 0x4ecfd1
mov dword [esp + 0x48], 0
mov dword [esp + 0x60], 1
mov dword [esp + 0x50], 0
jmp 0x4ebc98
lea edx, [esp + 0xc5]
jmp 0x4ec293
cmp word [esp + 0x28], 0x75
je 0x4ed047
cmp word [esp + 0x28], 0x6f
je 0x4ed032
mov dword [esp + 0x78], 0x10
mov dword [esp + 0x7c], 4
mov esi, dword [esp + 0x50]
test esi, esi
je 0x4ecb46
mov eax, dword [esp + 0x6c]
movzx edx, ax
mov dword [esp + 0x80], edx
mov dword [esp + 0x84], 0
test ax, ax
je 0x4ecb0d
mov dword [esp + 0x50], 0
mov dword [esp + 0x54], 0
mov esi, dword [esp + 0x78]
mov dword [esp + 0x28], ebp
mov ebp, dword [esp + 0x18]
xor ecx, ecx
xor ebx, ebx
lea esi, [esi]
add ecx, 1
adc ebx, 0
movzx eax, ax
cdq
idiv esi
test ax, ax
jne 0x4ec5f4
mov dword [esp + 0x50], ecx
mov dword [esp + 0x54], ebx
mov dword [esp + 0x18], ebp
mov ebp, dword [esp + 0x28]
mov edx, dword [esp + 0x50]
mov dword [esp + 0x74], edx
mov ecx, dword [esp + 0x50]
mov ebx, dword [esp + 0x54]
add ecx, 0xffffffff
adc ebx, 0xffffffff
mov dword [esp + 0x28], ecx
mov dword [esp + 0x2c], ebx
call fcn.004dd0d0
mov dword [esp + 0x60], eax
mov ebx, dword [esp + 0x74]
mov dword [esp + 4], ebx
mov dword [esp], eax
call fcn.004eb04c
mov eax, dword [esp + 0x60]
mov esi, dword [eax + 4]
test esi, esi
je 0x4ed2e8
mov edx, dword [esp + 0x54]
or edx, dword [esp + 0x50]
je 0x4ec8ee
mov eax, dword [esp + 0x78]
cdq
mov dword [esp + 0x38], eax
mov dword [esp + 0x3c], edx
add esi, dword [esp + 0x28]
mov dword [esp + 0x50], 0
mov dword [esp + 0x6c], 0
mov eax, dword [esp + 0x18]
mov dword [esp + 0x78], eax
mov ebx, dword [esp + 0x48]
mov dword [esp + 0x88], ebp
mov ebp, esi
mov dword [esp + 0x8c], edi
mov esi, dword [esp + 0x80]
mov edi, dword [esp + 0x84]
jmp 0x4ec6f8
add eax, 0x57
mov byte [ebp], al
mov edx, dword [esp + 0x38]
mov ecx, dword [esp + 0x3c]
mov dword [esp + 8], edx
mov dword [esp + 0xc], ecx
mov dword [esp], esi
mov dword [esp + 4], edi
call fcn.005cd23c
mov esi, eax
mov edi, edx
add dword [esp + 0x28], 0xffffffff
adc dword [esp + 0x2c], 0xffffffff
dec ebp
mov eax, dword [esp + 0x28]
and eax, dword [esp + 0x2c]
inc eax
je 0x4ec8d8
test ebx, ebx
je 0x4ec753
mov eax, dword [esp + 0xc4]
test eax, eax
je 0x4ec753
cmp eax, dword [esp + 0x6c]
jle 0x4ec74b
cmp dword [esp + 0x50], 0x23
ja 0x4ec74b
mov eax, dword [esp + 0xd0]
mov ecx, dword [esp + 0x6c]
mov eax, dword [eax + ecx*4]
xor edx, edx
mov cl, byte [esp + 0x50]
shld edx, eax, cl
shl eax, cl
test cl, 0x20
je 0x4ec736
mov edx, eax
xor eax, eax
mov ecx, esi
or ecx, eax
mov eax, edi
or eax, edx
mov esi, ecx
mov edi, eax
inc dword [esp + 0x6c]
add dword [esp + 0x50], 0x1c
mov ecx, dword [esp + 0x7c]
sub dword [esp + 0x50], ecx
mov eax, dword [esp + 0x38]
mov edx, dword [esp + 0x3c]
mov dword [esp + 8], eax
mov dword [esp + 0xc], edx
mov dword [esp], esi
mov dword [esp + 4], edi
call fcn.005cd340
cmp eax, 9
jg 0x4ec6b8
add eax, 0x30
mov byte [ebp], al
jmp 0x4ec6be
mov eax, dword [esp + 0x50]
test eax, eax
jne 0x4ecd3c
mov eax, dword [esp + 0x60]
test eax, eax
jne 0x4ed084
mov eax, dword [esp + 0x48]
test eax, eax
je 0x4ecfbb
lea eax, [esp + 0xc4]
mov dword [esp], eax
call fcn.004de8b4
mov esi, eax
jmp 0x4ecd4b
xor eax, eax
jmp 0x4ebb33
mov edx, dword [eax + 0x10]
mov dword [esp + 0xa8], edx
jmp 0x4ebf51
mov eax, dword [eax + 0x10]
mov dword [esp + 0xac], eax
lea ecx, [esp + 0xac]
mov dword [esp + 0x38], ecx
jmp 0x4ec154
mov eax, dword [esp + 0x40]
mov dword [esp], eax
call fcn.004ead80
mov esi, eax
mov eax, dword [esp + 0xa4]
cmp esi, eax
jg 0x4ed1a9
mov bx, word [esp + 0x96]
mov word [esp + 0x28], bx
mov dword [esp + 0x48], 0
lea edx, [esp + 0xac]
mov dword [esp + 0x38], edx
jmp 0x4ec19a
mov eax, dword [esp + 0x40]
mov dword [esp + 0x18], eax
mov ebp, dword [esp + 0x28]
add ebp, dword [esp + 0x18]
mov ebx, dword [esp + 0x5c]
add dword [esp + 0x44], ebx
mov esi, ebp
xor ebx, ebx
jmp 0x4ebac4
mov ecx, dword [esp + 0x48]
test ecx, ecx
jne 0x4ec890
mov bx, word [esp + 0x96]
mov word [esp + 0x28], bx
cmp bx, 0x64
je 0x4ec890
mov dword [esp + 0x70], 0x7fffffff
jmp 0x4ebfa8
mov esi, ebp
mov eax, dword [esp + 0x28]
mov dword [esp + 0x18], eax
mov ebp, dword [esp + 0x4c]
jmp 0x4ec038
test edx, edx
jne 0x4ec96c
test esi, esi
je 0x4ecd0c
mov eax, 0x60dc68
mov dword [esp + 8], 1
mov dword [esp + 4], eax
mov eax, dword [esp + 0x40]
mov dword [esp], eax
call fcn.004eb610
mov bx, word [esp + 0x96]
mov word [esp + 0x28], bx
mov dword [esp + 0x70], 0x7ffffffe
jmp 0x4ebfa8
mov eax, dword [esp + 0x78]
mov dword [esp + 0x18], eax
mov ebp, dword [esp + 0x88]
mov edi, dword [esp + 0x8c]
mov eax, dword [esp + 0x48]
test eax, eax
jne 0x4ece59
mov eax, dword [esp + 0x68]
test eax, eax
je 0x4ecbaf
mov eax, dword [esp + 0xa4]
cmp dword [esp + 0x74], eax
jl 0x4ecf6d
mov dword [esp + 0x58], 0
mov ebx, dword [esp + 0x74]
cmp dword [esp + 0x70], ebx
jl 0x4ebafd
mov eax, dword [esp + 0x60]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x40]
mov dword [esp], eax
call fcn.004eb710
mov eax, dword [esp + 0x60]
mov eax, dword [eax]
mov dword [esp + 0x30], eax
dec eax
mov edx, dword [esp + 0x60]
mov dword [edx], eax
test eax, eax
jg 0x4ec387
mov eax, dword [esp + 0x60]
mov dword [esp], eax
call fcn.004dd138
jmp 0x4ec387
mov eax, 0x60dc66
jmp 0x4ec8a5
shr edx, 0x1f
mov word [esp + 0x6c], 0
jmp 0x4ebf68
mov eax, dword [eax + 0x10]
mov dword [esp + 0xa0], eax
jmp 0x4ec47a
mov eax, dword [eax + 0x10]
mov dword [esp + 0xa4], eax
jmp 0x4ec4ea
lea eax, [esp + 0xb0]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 4], eax
mov dword [esp], 0
call fcn.004de244
test eax, eax
jne 0x4ed0a5
mov edx, dword [esp + 0xb4]
shr edx, 0x1f
mov word [esp + 0x6c], 0
jmp 0x4ebf68
neg eax
mov dword [esp + 0xa0], eax
mov dword [esp + 0x4c], 1
jmp 0x4ec482
mov dword [esp + 0xa4], 0
jmp 0x4ec4f2
mov ebx, dword [esp + 0xc4]
mov dword [esp + 0x60], ebx
test ebx, ebx
je 0x4ed2a6
mov edx, ebx
shl edx, 2
lea eax, [edx*8]
sub eax, edx
cdq
idiv dword [esp + 0x7c]
mov ecx, 0x1c
sub ecx, edx
mov esi, 0xffffffff
shl esi, cl
mov eax, ebx
cdq
mov ecx, ebx
mov ebx, edx
shld edx, eax, 2
add eax, eax
add eax, eax
shld ebx, ecx, 5
shl ecx, 5
sub ecx, eax
sbb ebx, edx
mov eax, dword [esp + 0x7c]
cdq
mov dword [esp + 8], eax
mov dword [esp + 0xc], edx
mov dword [esp], ecx
mov dword [esp + 4], ebx
call fcn.005ccf54
mov ecx, eax
mov ebx, edx
add ecx, 1
adc ebx, 0
mov dword [esp + 0x50], ecx
mov dword [esp + 0x54], ebx
mov ecx, dword [esp + 0xd0]
mov ebx, dword [esp + 0x60]
mov ecx, dword [ecx + ebx*4 - 4]
mov dword [esp + 0x60], ecx
test ecx, esi
jne 0x4ecace
mov ebx, dword [esp + 0x18]
mov ecx, dword [esp + 0x7c]
mov dword [esp + 0x6c], ebp
mov ebp, esi
mov dword [esp + 0x74], edi
mov esi, eax
mov edi, edx
shr ebp, cl
add eax, 0xffffffff
adc edx, 0xffffffff
test dword [esp + 0x60], ebp
je 0x4ecaa8
mov dword [esp + 0x18], ebx
mov dword [esp + 0x50], esi
mov dword [esp + 0x54], edi
mov ebp, dword [esp + 0x6c]
mov edi, dword [esp + 0x74]
cmp dword [esp + 0x54], 0
jg 0x4ebafd
jl 0x4ecae9
cmp dword [esp + 0x50], 0x7fffffff
ja 0x4ebafd
mov eax, dword [esp + 0x54]
or eax, dword [esp + 0x50]
mov dword [esp + 0x80], 0
mov dword [esp + 0x84], 0
jne 0x4ec615
cmp word [esp + 0x28], 0x6f
je 0x4ed170
mov dword [esp + 0x28], 0
mov dword [esp + 0x2c], 0
mov dword [esp + 0x74], 1
mov dword [esp + 0x50], 1
mov dword [esp + 0x54], 0
jmp 0x4ec633
mov ebx, dword [esp + 0x60]
test ebx, ebx
jne 0x4ecec1
mov ecx, dword [esp + 0x48]
test ecx, ecx
jne 0x4eca06
mov eax, dword [esp + 0xa8]
mov dword [esp + 0x80], eax
mov dword [esp + 0x84], 0
test eax, eax
je 0x4ecb0d
mov dword [esp + 0x50], 0
mov dword [esp + 0x54], 0
mov esi, dword [esp + 0x78]
mov dword [esp + 0x28], ebp
mov ebp, dword [esp + 0x18]
xor ecx, ecx
xor ebx, ebx
nop
add ecx, 1
adc ebx, 0
xor edx, edx
div esi
test eax, eax
jne 0x4ecb9c
jmp 0x4ec605
mov eax, dword [esp + 0x58]
test eax, eax
je 0x4ec91f
mov eax, dword [esp + 0x40]
mov dword [esp], eax
call fcn.004ead80
mov esi, dword [esp + 0x74]
add esi, eax
mov eax, dword [esp + 0xa0]
cmp esi, eax
jge 0x4ec91f
mov edx, esi
sub edx, eax
add dword [esp + 0x70], edx
mov eax, dword [esp + 0x18]
mov dword [esp + 0x28], eax
mov ebx, esi
mov esi, dword [esp + 0x40]
nop
mov dword [esp + 8], 1
mov dword [esp + 4], 0x60dc6a
mov dword [esp], esi
call fcn.004eb610
inc ebx
cmp dword [esp + 0xa0], ebx
jg 0x4ecbf4
mov eax, dword [esp + 0x28]
mov dword [esp + 0x18], eax
jmp 0x4ec91f
mov dword [esp + 8], 2
mov dword [esp + 4], 0x60dd2c
mov eax, dword [esp + 0x40]
mov dword [esp], eax
call fcn.004eb610
sub dword [esp + 0x70], 2
mov bx, word [esp + 0x96]
mov word [esp + 0x28], bx
jmp 0x4ebfd4
mov dword [esp + 8], 1
mov dword [esp + 4], 0x60dc6a
mov eax, dword [esp + 0x40]
mov dword [esp], eax
call fcn.004eb610
dec dword [esp + 0x70]
dec dword [esp + 0xa4]
mov bx, word [esp + 0x96]
mov word [esp + 0x28], bx
jmp 0x4ebfd4
mov dword [esp], edx
call fcn.004dd138
jmp 0x4ec0a0
lea eax, [esp + 0xb0]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 4], eax
mov dword [esp], 0
call fcn.004de244
test eax, eax
jne 0x4ed1f4
mov edx, dword [esp + 0xb0]
mov dword [esp + 0xa8], edx
jmp 0x4ebf51
mov dword [esp + 8], eax
mov dword [esp + 4], 0x60dd2f
mov dword [esp], edx
mov dword [esp + 0x1c], edx
call sub.msvcrt.dll_sprintf
mov edx, dword [esp + 0x1c]
add edx, eax
mov esi, dword [esp + 0xa0]
cmp esi, 0x140
jg 0x4ec2cf
jmp 0x4ec2ca
mov eax, str.__0d
jmp 0x4ec8a5
lea eax, [esp + 0x98]
mov dword [esp + 4], eax
mov ebx, dword [esp + 0x124]
mov dword [esp], ebx
call fcn.004dd5bc
mov eax, dword [esp + 0x98]
jmp 0x4eba95
movsx eax, word [esp + 0x6c]
mov dword [esp], eax
call fcn.004ddd50
mov esi, eax
inc dword [esi]
mov eax, dword [esi + 4]
mov dword [esp + 0x48], eax
test eax, eax
je 0x4ed2c1
mov edx, dword [esi + 8]
mov dword [esp + 0x38], edx
mov dword [esp + 0xac], edx
mov eax, dword [esp + 0x48]
cmp byte [eax], 0x2d
je 0x4ed054
mov eax, dword [esp + 0x68]
test eax, eax
je 0x4ecddc
mov eax, dword [esp + 0xa4]
cmp dword [esp + 0x38], eax
jl 0x4ece6d
mov dword [esp + 0x58], 0
mov ebx, dword [esp + 0x70]
cmp dword [esp + 0x38], ebx
jg 0x4ebafd
mov edx, dword [esp + 0x38]
mov dword [esp + 8], edx
mov eax, dword [esp + 0x48]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x40]
mov dword [esp], eax
call fcn.004eb610
mov eax, dword [esi]
dec eax
mov dword [esi], eax
test eax, eax
jg 0x4ec387
mov dword [esp], esi
call fcn.004dd138
jmp 0x4ec387
mov eax, dword [esp + 0x58]
test eax, eax
je 0x4ecd98
mov eax, dword [esp + 0x40]
mov dword [esp], eax
call fcn.004ead80
add eax, dword [esp + 0xac]
mov dword [esp + 0xac], eax
mov edx, dword [esp + 0xa0]
cmp eax, edx
jge 0x4ecd98
sub eax, edx
add dword [esp + 0x70], eax
mov eax, dword [esp + 0x18]
mov dword [esp + 0x68], eax
mov ebx, dword [esp + 0x40]
nop
mov dword [esp + 8], 1
mov dword [esp + 4], 0x60dc6a
mov dword [esp], ebx
call fcn.004eb610
mov eax, dword [esp + 0xac]
inc eax
mov dword [esp + 0xac], eax
cmp dword [esp + 0xa0], eax
jg 0x4ece1c
mov eax, dword [esp + 0x68]
mov dword [esp + 0x18], eax
jmp 0x4ecd98
lea edx, [esp + 0xc4]
mov dword [esp], edx
call fcn.005249ec
jmp 0x4ec8fa
mov ecx, dword [esp + 0x38]
sub ecx, eax
add dword [esp + 0x70], ecx
mov eax, dword [esp + 0x18]
mov dword [esp + 0x58], eax
mov ebx, dword [esp + 0x40]
nop
mov dword [esp + 8], 1
mov dword [esp + 4], 0x60dc6a
mov dword [esp], ebx
call fcn.004eb610
mov eax, dword [esp + 0xac]
inc eax
mov dword [esp + 0xac], eax
cmp dword [esp + 0xa4], eax
jg 0x4ece84
mov eax, dword [esp + 0x58]
mov dword [esp + 0x18], eax
jmp 0x4ecd90
mov esi, dword [esp + 0xb0]
mov ecx, dword [esp + 0xb4]
mov dword [esp + 0x60], ecx
or ecx, esi
je 0x4ed2a6
mov eax, dword [esp + 0x78]
cdq
mov dword [esp + 0x28], eax
mov dword [esp + 0x2c], edx
mov eax, esi
mov edx, dword [esp + 0x60]
mov dword [esp + 0x50], 0
mov dword [esp + 0x54], 0
mov ecx, ebp
mov ebp, dword [esp + 0x18]
mov dword [esp + 0x38], esi
mov dword [esp + 0x6c], edi
xor esi, esi
xor edi, edi
mov dword [esp + 0x74], ecx
add esi, 1
adc edi, 0
mov ecx, dword [esp + 0x28]
mov ebx, dword [esp + 0x2c]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ebx
mov dword [esp], eax
mov dword [esp + 4], edx
call fcn.005cd23c
mov ebx, edx
or ebx, eax
jne 0x4ecf14
mov dword [esp + 0x50], esi
mov dword [esp + 0x54], edi
mov eax, dword [esp + 0x74]
mov dword [esp + 0x18], ebp
mov esi, dword [esp + 0x38]
mov edi, dword [esp + 0x6c]
mov ebp, eax
mov dword [esp + 0x80], esi
mov ecx, dword [esp + 0x60]
mov dword [esp + 0x84], ecx
jmp 0x4ec615
mov ebx, dword [esp + 0x74]
sub ebx, eax
add dword [esp + 0x70], ebx
mov esi, dword [esp + 0x74]
mov eax, dword [esp + 0x18]
mov dword [esp + 0x28], eax
mov ebx, esi
mov esi, dword [esp + 0x40]
lea esi, [esi]
mov dword [esp + 8], 1
mov dword [esp + 4], 0x60dc6a
mov dword [esp], esi
call fcn.004eb610
inc ebx
cmp dword [esp + 0xa4], ebx
jg 0x4ecf8c
mov eax, dword [esp + 0x28]
mov dword [esp + 0x18], eax
jmp 0x4ec917
mov eax, dword [esp + 0xa8]
mov dword [esp], eax
call fcn.004ddde0
mov esi, eax
jmp 0x4ecd4b
add ebp, dword [esp + 0x18]
mov dword [esp + 4], edi
mov dword [esp], ebp
call fcn.0050cf60
mov dword [esp + 0x18], eax
movzx eax, word [esp + 0x96]
mov dword [esp + 0x48], 1
mov dword [esp + 0x60], 0
mov dword [esp + 0x50], 0
jmp 0x4ebc98
mov dword [esp + 8], ebx
mov dword [esp + 4], esi
mov ebx, dword [esp + 0x124]
mov dword [esp], ebx
call fcn.004eb610
xor eax, eax
jmp 0x4ebb33
mov eax, str.unsigned_bignum_format_is_invalid
jmp 0x4ec3e9
mov dword [esp + 0x78], 8
mov dword [esp + 0x7c], 3
jmp 0x4ec5a3
mov dword [esp + 0x78], 0xa
jmp 0x4ec59b
dec dword [esp + 0x38]
mov edx, dword [esp + 0x38]
mov dword [esp + 0xac], edx
inc eax
mov dword [esp + 0x48], eax
jmp 0x4ecd77
mov dword [esp], ecx
call fcn.004dd368
jmp 0x4ec3c7
mov eax, 0x60dc90
jmp 0x4ec3e9
mov eax, dword [esp + 0xb0]
mov edx, dword [esp + 0xb4]
mov dword [esp], eax
mov dword [esp + 4], edx
call fcn.004de1f0
mov esi, eax
jmp 0x4ecd4b
lea edx, [esp + 0xc4]
mov dword [esp + 8], edx
mov eax, dword [esp + 0x40]
mov dword [esp + 4], eax
mov edx, dword [esp + 0x120]
mov dword [esp], edx
call fcn.004de4d4
test eax, eax
jne 0x4ebb14
lea ecx, [esp + 0xc4]
mov dword [esp + 8], ecx
mov dword [esp + 4], 0x40
mov dword [esp], ecx
call fcn.0053cce0
lea eax, [esp + 0xc4]
mov dword [esp], eax
call fcn.004de8b4
inc dword [eax]
lea ecx, [esp + 0xb0]
mov dword [esp + 8], ecx
mov dword [esp + 4], eax
mov dword [esp], 0
mov dword [esp + 0x1c], eax
call fcn.004de244
mov edx, dword [esp + 0x1c]
mov eax, dword [edx]
dec eax
mov dword [edx], eax
test eax, eax
jg 0x4ec9ca
mov dword [esp], edx
call fcn.004dd138
jmp 0x4ec9ca
mov ebx, dword [esp + 0x48]
test ebx, ebx
je 0x4ebafd
mov eax, dword [esp + 0x40]
mov eax, dword [eax]
mov dword [esp + 0x24], eax
dec eax
mov edx, dword [esp + 0x40]
mov dword [edx], eax
test eax, eax
jg 0x4ebafd
mov dword [esp], edx
call fcn.004dd138
mov eax, 0x60dc6c
jmp 0x4ec3e9
mov edx, dword [esp + 0x38]
test edx, edx
je 0x4ecb19
mov dword [esp + 0x28], 0xffffffff
mov dword [esp + 0x2c], 0xffffffff
mov dword [esp + 0x74], 0
mov dword [esp + 0x50], 0
mov dword [esp + 0x54], 0
jmp 0x4ec633
dec eax
mov dword [esp + 8], eax
mov dword [esp + 4], 0
mov eax, dword [esp + 0x40]
mov dword [esp], eax
call fcn.004eaf04
mov dword [esp + 0x40], eax
mov esi, dword [esp + 0xa4]
inc dword [eax]
mov bx, word [esp + 0x96]
mov word [esp + 0x28], bx
mov dword [esp + 0x48], 1
lea edx, [esp + 0xac]
mov dword [esp + 0x38], edx
jmp 0x4ec19a
lea edx, [esp + 0xc4]
mov dword [esp + 8], edx
mov eax, dword [esp + 0x40]
mov dword [esp + 4], eax
mov edx, dword [esp + 0x120]
mov dword [esp], edx
call fcn.004de4d4
test eax, eax
jne 0x4ebb14
lea ecx, [esp + 0xc4]
mov dword [esp + 8], ecx
mov dword [esp + 4], 0x20
mov dword [esp], ecx
call fcn.0053cce0
lea eax, [esp + 0xc4]
mov dword [esp], eax
call fcn.004de8b4
mov edx, eax
mov eax, dword [eax]
inc eax
mov dword [edx], eax
cmp dword [edx + 0xc], 0x5e01f0
je 0x4ed2f7
lea ecx, [esp + 0xa8]
mov dword [esp + 8], ecx
mov dword [esp + 4], edx
mov dword [esp], 0
mov dword [esp + 0x1c], edx
call fcn.004dde74
mov edx, dword [esp + 0x1c]
mov eax, dword [edx]
dec eax
mov dword [edx], eax
test eax, eax
jg 0x4ebf4a
mov dword [esp], edx
call fcn.004dd138
jmp 0x4ebf4a
mov dword [esp], ebx
call fcn.004dd368
jmp 0x4ec351
mov dword [esp + 0x80], 0
mov dword [esp + 0x84], 0
jmp 0x4ecb0d
lea ecx, [esp + 0xac]
mov dword [esp + 4], ecx
mov dword [esp], esi
call fcn.004dd5bc
mov dword [esp + 0x48], eax
mov ebx, dword [esp + 0xac]
mov dword [esp + 0x38], ebx
jmp 0x4ecd6a
mov dword [esp], eax
call fcn.004dd368
mov esi, eax
jmp 0x4ec65b
mov ecx, dword [edx + 0x10]
mov dword [esp + 0xa8], ecx
jmp 0x4ed281
mov esi, 0xffffffff
lea edx, [esp + 0xac]
mov dword [esp + 0x38], edx
jmp 0x4ec038