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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xffffffc0
sub esp, 0x74
mov eax, dword [ebp + 0x14]
xor ecx, ecx
push ebx
mov ebx, dword [ebp + 0x18]
push esi
push edi
xor esi, esi
xor edi, edi
mov dword [esp + 0x20], ecx
mov dword [esp + 0x24], ecx
mov dword [esp + 0x50], ecx
mov dword [esp + 0x54], ecx
mov dword [esp + 0x10], ecx
mov dword [esp + 0x58], ecx
mov dword [esp + 0x5c], ecx
mov dword [esp + 0x38], ecx
mov dword [esp + 0x18], ecx
mov dword [esp + 0x14], esi
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x48], ecx
mov dword [esp + 0x34], ecx
mov dword [esp + 0x40], ecx
mov dword [esp + 0x44], ecx
cmp eax, ecx
jne 0x1008baf0
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 4]
cmp eax, ecx
jne 0x1008baed
push edx
call sym.tcl85.dll_Tcl_GetString
add esp, 4
xor ecx, ecx
mov dword [ebp + 0x14], eax
mov dword [esp + 0x1c], eax
mov dword [esp + 0x28], ebx
mov dword [esp + 0x30], eax
mov dword [esp + 0x2c], ebx
cmp dword [esp + 0x28], ecx
je 0x1008bb0e
mov eax, dword [esp + 0x1c]
mov bl, byte [eax]
jmp 0x1008bb10
xor bl, bl
cmp edi, 0x1d
ja case.default.0x1008bb19
jmp dword [edi*4 + 0x1008cddc]
movsx ecx, bl
test byte [ecx + 0x100b8d18], 1
jne 0x1008bb31
cmp bl, 0xa
jne 0x1008bb4c
test byte [ebp + 0x20], 0x20
jne 0x1008c717
mov eax, 1
add dword [esp + 0x1c], eax
sub dword [esp + 0x28], eax
xor ecx, ecx
jmp 0x1008bb00
cmp bl, 0x2b
jne 0x1008bb64
mov edi, 1
mov eax, edi
add dword [esp + 0x1c], eax
sub dword [esp + 0x28], eax
xor ecx, ecx
jmp 0x1008bb00
cmp bl, 0x2d
jne case.0x1008bb19.1
mov edi, 1
mov eax, edi
add dword [esp + 0x1c], eax
sub dword [esp + 0x28], eax
mov dword [esp + 0x24], edi
xor ecx, ecx
jmp 0x1008bb00
cmp bl, 0x30
jne 0x1008bba9
movsx edi, byte [ebp + 0x20]
and edi, 1
add edi, edi
add edi, edi
add edi, edi
mov eax, 1
add dword [esp + 0x1c], eax
sub dword [esp + 0x28], eax
or edi, 2
xor ecx, ecx
jmp 0x1008bb00
mov al, byte [ebp + 0x20]
test al, 4
jne case.0x1008bb19.3
test al, 2
jne case.0x1008bb19.4
movzx edx, bl
push edx
call dword [sym.imp.MSVCR90.dll_isdigit]
add esp, 4
test eax, eax
je 0x1008bbfd
movsx eax, bl
sub eax, 0x30
cdq
mov dword [esp + 0x50], eax
mov eax, 1
add dword [esp + 0x1c], eax
sub dword [esp + 0x28], eax
mov dword [esp + 0x54], edx
mov dword [esp + 0x18], 1
mov edi, 0xa
xor ecx, ecx
jmp 0x1008bb00
test byte [ebp + 0x20], 8
jne 0x1008c717
cmp bl, 0x2e
jne 0x1008bc25
mov eax, 1
add dword [esp + 0x1c], eax
sub dword [esp + 0x28], eax
mov edi, 0xb
xor ecx, ecx
jmp 0x1008bb00
cmp bl, 0x49
je 0x1008bc56
cmp bl, 0x69
je 0x1008bc56
cmp bl, 0x4e
je 0x1008bc3d
cmp bl, 0x6e
jne 0x1008c717
mov eax, 1
add dword [esp + 0x1c], eax
sub dword [esp + 0x28], eax
mov edi, 0x18
xor ecx, ecx
jmp 0x1008bb00
mov eax, 1
add dword [esp + 0x1c], eax
sub dword [esp + 0x28], eax
mov edi, 0x10
xor ecx, ecx
jmp 0x1008bb00
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x20], 2
mov dword [esp + 0x30], eax
mov dword [esp + 0x2c], ecx
cmp bl, 0x78
je 0x1008bcef
cmp bl, 0x58
je 0x1008bcef
test byte [ebp + 0x20], 4
jne case.0x1008bb19.3
test byte [ebp + 0x20], 0x10
jne case.0x1008bb19.4
cmp bl, 0x62
je 0x1008bcd6
cmp bl, 0x42
je 0x1008bcd6
cmp bl, 0x6f
je 0x1008bcb5
cmp bl, 0x4f
jne case.0x1008bb19.8
mov eax, 1
add dword [esp + 0x1c], eax
sub dword [esp + 0x28], eax
mov dword [esp + 0x44], 1
mov edi, 4
xor ecx, ecx
jmp 0x1008bb00
mov eax, 1
add dword [esp + 0x1c], eax
sub dword [esp + 0x28], eax
mov edi, 5
xor ecx, ecx
jmp 0x1008bb00
mov eax, 1
add dword [esp + 0x1c], eax
sub dword [esp + 0x28], eax
mov edi, 3
xor ecx, ecx
jmp 0x1008bb00
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x28]
mov dword [esp + 0x20], edi
mov dword [esp + 0x30], edx
mov dword [esp + 0x2c], eax
cmp bl, 0x30
jne 0x1008bd3f
mov eax, 1
add dword [esp + 0x1c], eax
sub dword [esp + 0x28], eax
inc esi
mov dword [esp + 0x14], esi
mov edi, 8
xor ecx, ecx
jmp 0x1008bb00
mov cl, bl
sub cl, 0x31
cmp cl, 6
ja case.0x1008bb19.9
cmp dword [ebp + 0xc], 0
je 0x1008be01
mov edx, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
movsx ebx, bl
push edx
lea eax, [esp + 0x54]
push eax
lea esi, [ebx - 0x30]
push esi
lea eax, [esp + 0x6c]
lea edi, [ecx + ecx*2 + 3]
mov dword [esp + 0x58], esi
call fcn.1008cea0
add esp, 0xc
cmp dword [esp + 0x38], 0
mov dword [esp + 0x10], eax
jne 0x1008bddf
mov ecx, dword [esp + 0x58]
mov esi, dword [esp + 0x5c]
or ecx, esi
je 0x1008be3a
cmp edi, 0x40
jae 0x1008bdbd
or eax, 0xffffffff
or edx, 0xffffffff
mov ecx, edi
call fcn.100b3db0
cmp esi, edx
jb 0x1008be3a
ja 0x1008bdbd
cmp dword [esp + 0x58], eax
jbe 0x1008be3a
mov edx, dword [esp + 0x5c]
mov eax, dword [esp + 0x58]
push edx
push eax
lea esi, [esp + 0x78]
mov dword [esp + 0x40], 1
call fcn.10091e40
mov esi, dword [esp + 0x54]
add esp, 8
lea ecx, [esp + 0x70]
push ecx
mov edx, ecx
push edi
push edx
call sym.tcl85.dll_TclBN_mp_mul_2d
add esp, 0xc
lea eax, [esp + 0x70]
push eax
mov ecx, eax
push esi
push ecx
call sym.tcl85.dll_TclBN_mp_add_d
add esp, 0xc
mov eax, dword [esp + 0x18]
test eax, eax
je 0x1008be65
mov edx, dword [esp + 0x14]
lea eax, [eax + edx + 1]
mov dword [esp + 0x18], eax
mov eax, 1
add dword [esp + 0x1c], eax
sub dword [esp + 0x28], eax
mov dword [esp + 0x14], 0
mov esi, dword [esp + 0x14]
mov edi, 8
xor ecx, ecx
jmp 0x1008bb00
lea eax, [ebx - 0x30]
cdq
mov ebx, eax
mov eax, edx
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0x58]
mov edx, esi
mov ecx, edi
call fcn.100b3b70
add ebx, eax
mov eax, dword [esp + 0x4c]
adc eax, edx
mov dword [esp + 0x58], ebx
mov dword [esp + 0x5c], eax
jmp 0x1008be01
mov eax, 1
add dword [esp + 0x1c], eax
sub dword [esp + 0x28], eax
mov dword [esp + 0x14], 0
mov esi, dword [esp + 0x14]
mov dword [esp + 0x18], 1
mov edi, 8
xor ecx, ecx
jmp 0x1008bb00
cmp dword [esp + 0x44], 0
jne 0x1008c717
test byte [ebp + 0x20], 8
jne 0x1008c717
cmp bl, 0x30
jne 0x1008beca
mov eax, 1
add dword [esp + 0x1c], eax
sub dword [esp + 0x28], eax
inc esi
mov dword [esp + 0x14], esi
mov edi, 9
xor ecx, ecx
jmp 0x1008bb00
movzx ecx, bl
push ecx
call dword [sym.imp.MSVCR90.dll_isdigit]
add esp, 4
test eax, eax
je 0x1008bf56
cmp dword [ebp + 0xc], 0
je 0x1008bf04
mov edx, dword [esp + 0x10]
push edx
movsx ecx, bl
lea eax, [esp + 0x54]
push eax
sub ecx, 0x30
push ecx
lea eax, [esp + 0x6c]
mov ecx, esi
call fcn.1008cea0
add esp, 0xc
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x18]
test eax, eax
je 0x1008bf31
lea edx, [eax + esi + 1]
xor esi, esi
mov eax, 1
add dword [esp + 0x1c], eax
sub dword [esp + 0x28], eax
mov dword [esp + 0x18], edx
mov dword [esp + 0x14], esi
lea edi, [esi + 9]
xor ecx, ecx
jmp 0x1008bb00
xor esi, esi
mov eax, 1
add dword [esp + 0x1c], eax
sub dword [esp + 0x28], eax
mov dword [esp + 0x18], 1
mov dword [esp + 0x14], esi
lea edi, [esi + 9]
xor ecx, ecx
jmp 0x1008bb00
cmp bl, 0x2e
jne 0x1008bf74
mov eax, 1
add dword [esp + 0x1c], eax
sub dword [esp + 0x28], eax
mov edi, 0xc
xor ecx, ecx
jmp 0x1008bb00
cmp bl, 0x45
je 0x1008bf82
cmp bl, 0x65
jne 0x1008c717
mov eax, 1
add dword [esp + 0x1c], eax
sub dword [esp + 0x28], eax
mov edi, 0xd
xor ecx, ecx
jmp 0x1008bb00
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x20], 7
mov dword [esp + 0x30], eax
mov dword [esp + 0x2c], ecx
cmp bl, 0x30
jne 0x1008bfd6
mov eax, 1
add dword [esp + 0x1c], eax
sub dword [esp + 0x28], eax
inc esi
mov dword [esp + 0x14], esi
mov edi, 7
xor ecx, ecx
jmp 0x1008bb00
movzx edx, bl
push edx
call dword [sym.imp.MSVCR90.dll_isdigit]
add esp, 4
test eax, eax
je 0x1008bfec
sub bl, 0x30
jmp 0x1008c00a
mov al, bl
sub al, 0x41
cmp al, 5
ja 0x1008bff9
sub bl, 0x37
jmp 0x1008c00a
mov cl, bl
sub cl, 0x61
cmp cl, 5
ja 0x1008c717
sub bl, 0x57
cmp dword [ebp + 0xc], 0
je 0x1008c08f
cmp dword [esp + 0x10], 0
lea edi, [esi*4 + 4]
jne 0x1008c06a
mov edx, dword [esp + 0x50]
or edx, dword [esp + 0x54]
je 0x1008c0ac
cmp edi, 0x40
jae 0x1008c04c
or eax, 0xffffffff
or edx, 0xffffffff
mov ecx, edi
call fcn.100b3db0
cmp dword [esp + 0x54], edx
jb 0x1008c0ac
ja 0x1008c04c
cmp dword [esp + 0x50], eax
jbe 0x1008c0ac
mov eax, dword [esp + 0x54]
mov ecx, dword [esp + 0x50]
push eax
push ecx
lea esi, [esp + 0x68]
mov dword [esp + 0x18], 1
call fcn.10091e40
add esp, 8
lea edx, [esp + 0x60]
push edx
mov eax, edx
push edi
push eax
call sym.tcl85.dll_TclBN_mp_mul_2d
add esp, 0xc
lea ecx, [esp + 0x60]
movsx edx, bl
push ecx
push edx
mov eax, ecx
push eax
call sym.tcl85.dll_TclBN_mp_add_d
add esp, 0xc
xor esi, esi
mov eax, 1
add dword [esp + 0x1c], eax
sub dword [esp + 0x28], eax
mov dword [esp + 0x14], esi
lea edi, [esi + 7]
xor ecx, ecx
jmp 0x1008bb00
mov eax, dword [esp + 0x50]
mov edx, dword [esp + 0x54]
mov ecx, edi
call fcn.100b3b70
mov ecx, eax
movsx eax, bl
mov esi, edx
cdq
add ecx, eax
adc esi, edx
mov dword [esp + 0x50], ecx
mov dword [esp + 0x54], esi
jmp 0x1008c08f
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x28]
mov dword [esp + 0x20], 6
mov dword [esp + 0x30], ecx
mov dword [esp + 0x2c], edx
cmp bl, 0x30
jne 0x1008c10c
mov eax, 1
add dword [esp + 0x1c], eax
sub dword [esp + 0x28], eax
inc esi
mov dword [esp + 0x14], esi
mov edi, 6
xor ecx, ecx
jmp 0x1008bb00
cmp bl, 0x31
jne 0x1008c717
cmp dword [ebp + 0xc], 0
je 0x1008c190
cmp dword [esp + 0x10], 0
lea edi, [esi + 1]
jne 0x1008c16d
mov eax, dword [esp + 0x50]
or eax, dword [esp + 0x54]
je 0x1008c1ad
cmp edi, 0x40
jae 0x1008c14f
or eax, 0xffffffff
or edx, 0xffffffff
mov ecx, edi
call fcn.100b3db0
cmp dword [esp + 0x54], edx
jb 0x1008c1ad
ja 0x1008c14f
cmp dword [esp + 0x50], eax
jbe 0x1008c1ad
mov ecx, dword [esp + 0x54]
mov edx, dword [esp + 0x50]
push ecx
push edx
lea esi, [esp + 0x68]
mov dword [esp + 0x18], 1
call fcn.10091e40
add esp, 8
lea eax, [esp + 0x60]
push eax
mov ecx, eax
push edi
push ecx
call sym.tcl85.dll_TclBN_mp_mul_2d
add esp, 0xc
lea edx, [esp + 0x60]
push edx
mov eax, edx
push 1
push eax
call sym.tcl85.dll_TclBN_mp_add_d
add esp, 0xc
xor esi, esi
mov eax, 1
add dword [esp + 0x1c], eax
sub dword [esp + 0x28], eax
mov dword [esp + 0x14], esi
lea edi, [esi + 6]
xor ecx, ecx
jmp 0x1008bb00
mov eax, dword [esp + 0x50]
mov edx, dword [esp + 0x54]
mov ecx, edi
call fcn.100b3b70
add eax, 1
adc edx, 0
mov dword [esp + 0x50], eax
mov dword [esp + 0x54], edx
jmp 0x1008c190
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x28]
mov dword [esp + 0x20], 0xa
mov dword [esp + 0x30], ecx
mov dword [esp + 0x2c], edx
cmp bl, 0x30
jne 0x1008c207
mov eax, 1
add dword [esp + 0x1c], eax
sub dword [esp + 0x28], eax
inc esi
mov dword [esp + 0x14], esi
mov edi, 0xa
xor ecx, ecx
jmp 0x1008bb00
movzx eax, bl
push eax
call dword [sym.imp.MSVCR90.dll_isdigit]
add esp, 4
test eax, eax
je 0x1008c26a
cmp dword [ebp + 0xc], 0
je 0x1008c241
mov ecx, dword [esp + 0x10]
push ecx
movsx eax, bl
lea edx, [esp + 0x54]
sub eax, 0x30
push edx
push eax
lea eax, [esp + 0x6c]
mov ecx, esi
call fcn.1008cea0
add esp, 0xc
mov dword [esp + 0x10], eax
mov ecx, dword [esp + 0x18]
lea edx, [ecx + esi + 1]
xor esi, esi
mov eax, 1
add dword [esp + 0x1c], eax
sub dword [esp + 0x28], eax
mov dword [esp + 0x18], edx
mov dword [esp + 0x14], esi
lea edi, [esi + 0xa]
xor ecx, ecx
jmp 0x1008bb00
test byte [ebp + 0x20], 8
jne 0x1008c884
cmp bl, 0x2e
jne 0x1008c292
mov eax, 1
add dword [esp + 0x1c], eax
sub dword [esp + 0x28], eax
mov edi, 0xc
xor ecx, ecx
jmp 0x1008bb00
cmp bl, 0x45
je 0x1008c2a0
cmp bl, 0x65
jne 0x1008c884
mov eax, 1
add dword [esp + 0x1c], eax
sub dword [esp + 0x28], eax
mov edi, 0xd
xor ecx, ecx
jmp 0x1008bb00
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x20], 0xc
mov dword [esp + 0x30], eax
mov dword [esp + 0x2c], ecx
cmp bl, 0x45
je 0x1008c2db
cmp bl, 0x65
jne case.0x1008bb19.11
mov eax, 1
add dword [esp + 0x1c], eax
sub dword [esp + 0x28], eax
mov edi, 0xd
xor ecx, ecx
jmp 0x1008bb00
cmp bl, 0x30
jne 0x1008c31b
inc dword [esp + 0x3c]
mov eax, 1
add dword [esp + 0x1c], eax
sub dword [esp + 0x28], eax
inc esi
mov dword [esp + 0x14], esi
mov edi, 0xc
xor ecx, ecx
jmp 0x1008bb00
movzx edx, bl
push edx
call dword [sym.imp.MSVCR90.dll_isdigit]
add esp, 4
test eax, eax
je 0x1008c717
mov edi, 1
add dword [esp + 0x3c], edi
cmp dword [ebp + 0xc], 0
je 0x1008c362
mov eax, dword [esp + 0x10]
push eax
movsx edx, bl
lea ecx, [esp + 0x54]
push ecx
sub edx, 0x30
push edx
lea eax, [esp + 0x6c]
mov ecx, esi
call fcn.1008cea0
add esp, 0xc
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x18]
test eax, eax
je 0x1008c38f
lea eax, [eax + esi + 1]
mov dword [esp + 0x18], eax
xor esi, esi
mov eax, 1
add dword [esp + 0x1c], eax
sub dword [esp + 0x28], eax
mov dword [esp + 0x14], esi
lea edi, [esi + 0xc]
xor ecx, ecx
jmp 0x1008bb00
xor esi, esi
mov eax, 1
add dword [esp + 0x1c], eax
sub dword [esp + 0x28], eax
mov dword [esp + 0x18], edi
mov dword [esp + 0x14], esi
lea edi, [esi + 0xc]
xor ecx, ecx
jmp 0x1008bb00
cmp bl, 0x2b
jne 0x1008c3ce
mov eax, 1
add dword [esp + 0x1c], eax
sub dword [esp + 0x28], eax
mov edi, 0xe
xor ecx, ecx
jmp 0x1008bb00
cmp bl, 0x2d
jne case.0x1008bb19.14
mov eax, 1
add dword [esp + 0x1c], eax
sub dword [esp + 0x28], eax
mov dword [esp + 0x48], 1
mov edi, 0xe
xor ecx, ecx
jmp 0x1008bb00
movzx ecx, bl
push ecx
call dword [sym.imp.MSVCR90.dll_isdigit]
add esp, 4
test eax, eax
je 0x1008c717
movsx eax, bl
sub eax, 0x30
mov dword [esp + 0x34], eax
mov eax, 1
add dword [esp + 0x1c], eax
sub dword [esp + 0x28], eax
mov edi, 0xf
xor ecx, ecx
jmp 0x1008bb00
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x28]
movzx ecx, bl
push ecx
mov dword [esp + 0x24], 0xf
mov dword [esp + 0x34], edx
mov dword [esp + 0x30], eax
call dword [sym.imp.MSVCR90.dll_isdigit]
add esp, 4
test eax, eax
je 0x1008c884
mov eax, dword [esp + 0x34]
cmp eax, 0xccccccb
jge 0x1008c48b
lea edx, [eax + eax*4]
movsx eax, bl
lea ecx, [eax + edx*2 - 0x30]
mov eax, 1
add dword [esp + 0x1c], eax
sub dword [esp + 0x28], eax
mov dword [esp + 0x34], ecx
mov edi, 0xf
xor ecx, ecx
jmp 0x1008bb00
mov eax, 1
add dword [esp + 0x1c], eax
sub dword [esp + 0x28], eax
mov dword [esp + 0x34], accept
mov edi, 0xf
xor ecx, ecx
jmp 0x1008bb00
cmp bl, 0x6e
je 0x1008c4ba
cmp bl, 0x4e
jne 0x1008c717
mov eax, 1
add dword [esp + 0x1c], eax
sub dword [esp + 0x28], eax
mov edi, 0x11
xor ecx, ecx
jmp 0x1008bb00
cmp bl, 0x66
je 0x1008c4e1
cmp bl, 0x46
jne 0x1008c717
mov eax, 1
add dword [esp + 0x1c], eax
sub dword [esp + 0x28], eax
mov edi, 0x12
xor ecx, ecx
jmp 0x1008bb00
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x28]
mov dword [esp + 0x20], 0x12
mov dword [esp + 0x30], edx
mov dword [esp + 0x2c], eax
cmp bl, 0x69
je 0x1008c520
cmp bl, 0x49
jne 0x1008c884
mov eax, 1
add dword [esp + 0x1c], eax
sub dword [esp + 0x28], eax
mov edi, 0x13
xor ecx, ecx
jmp 0x1008bb00
cmp bl, 0x6e
je 0x1008c547
cmp bl, 0x4e
jne 0x1008c717
mov eax, 1
add dword [esp + 0x1c], eax
sub dword [esp + 0x28], eax
mov edi, 0x14
xor ecx, ecx
jmp 0x1008bb00
cmp bl, 0x69
je 0x1008c56e
cmp bl, 0x49
jne 0x1008c717
mov eax, 1
add dword [esp + 0x1c], eax
sub dword [esp + 0x28], eax
mov edi, 0x15
xor ecx, ecx
jmp 0x1008bb00
cmp bl, 0x74
je 0x1008c595
cmp bl, 0x54
jne 0x1008c717
mov eax, 1
add dword [esp + 0x1c], eax
sub dword [esp + 0x28], eax
mov edi, 0x16
xor ecx, ecx
jmp 0x1008bb00
cmp bl, 0x79
je 0x1008c5bc
cmp bl, 0x59
jne 0x1008c717
mov eax, 1
add dword [esp + 0x1c], eax
sub dword [esp + 0x28], eax
mov edi, 0x17
xor ecx, ecx
jmp 0x1008bb00
cmp bl, 0x61
je 0x1008c5e3
cmp bl, 0x41
jne 0x1008c717
mov eax, 1
add dword [esp + 0x1c], eax
sub dword [esp + 0x28], eax
mov edi, 0x19
xor ecx, ecx
jmp 0x1008bb00
cmp bl, 0x6e
je 0x1008c60a
cmp bl, 0x4e
jne 0x1008c717
mov eax, 1
add dword [esp + 0x1c], eax
sub dword [esp + 0x28], eax
mov edi, 0x1a
xor ecx, ecx
jmp 0x1008bb00
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x28]
mov dword [esp + 0x20], 0x1a
mov dword [esp + 0x30], ecx
mov dword [esp + 0x2c], edx
cmp bl, 0x28
jne 0x1008c884
mov eax, 1
add dword [esp + 0x1c], eax
sub dword [esp + 0x28], eax
mov edi, 0x1b
xor ecx, ecx
jmp 0x1008bb00
cmp bl, 0x29
jne case.0x1008bb19.27
mov eax, 1
add dword [esp + 0x1c], eax
sub dword [esp + 0x28], eax
mov edi, 0x1d
xor ecx, ecx
jmp 0x1008bb00
movsx eax, bl
test byte [eax + 0x100b8d18], 1
jne case.default.0x1008bb19
cmp bl, 0xa
je case.default.0x1008bb19
cmp dword [esp + 0x18], 0xd
jge 0x1008c717
mov al, bl
sub al, 0x30
cmp al, 9
ja 0x1008c6a3
mov bl, al
jmp 0x1008c6bf
mov cl, bl
sub cl, 0x61
cmp cl, 5
ja 0x1008c6b2
sub bl, 0x57
jmp 0x1008c6bf
mov dl, bl
sub dl, 0x41
cmp dl, 5
ja 0x1008c717
sub bl, 0x37
mov eax, dword [esp + 0x54]
mov ecx, dword [esp + 0x50]
inc dword [esp + 0x18]
push 0
push 0x10
push eax
push ecx
call fcn.100b39d0
mov ecx, eax
movsx eax, bl
mov edi, edx
cdq
add ecx, eax
adc edi, edx
mov dword [esp + 0x54], edi
mov dword [esp + 0x50], ecx
mov edi, 0x1c
mov eax, 1
add dword [esp + 0x1c], eax
sub dword [esp + 0x28], eax
xor ecx, ecx
jmp 0x1008bb00
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x28]
mov dword [esp + 0x20], edi
mov dword [esp + 0x30], edx
mov dword [esp + 0x2c], eax
cmp dword [esp + 0x20], 0
jne 0x1008c884
mov eax, dword [ebp + 0x1c]
mov dword [esp + 0x40], 1
test eax, eax
je 0x1008c737
mov ecx, dword [esp + 0x1c]
mov dword [eax], ecx
cmp dword [ebp + 8], 0
je case.default.0x1008c913
mov esi, dword [0x100d45d8]
test esi, esi
jne 0x1008c756
call sym.tcl85.dll_TclAllocateFreeObjects
mov esi, dword [0x100d45d8]
mov eax, dword [esi + 0x10]
push 0xa
mov dword [0x100d45d8], eax
mov dword [esi], 0
call dword [sym.imp.MSVCR90.dll_malloc]
mov ebx, eax
add esp, 4
test ebx, ebx
jne 0x1008c784
push 0xa
push str.unable_to_alloc__u_bytes
call sym.tcl85.dll_Tcl_Panic
add esp, 8
mov dword [esi + 4], ebx
mov ecx, dword [str.expected]
mov dword [ebx], ecx
mov edx, dword [0x100bdb5c]
mov dword [ebx + 4], edx
mov al, byte [0x100bdb60]
mov edx, dword [ebp + 0x10]
push 0
push accept
mov byte [ebx + 8], al
mov ecx, dword [esi + 4]
push 0xffffffffffffffff
push edx
mov byte [ecx + 9], 0
push esi
mov dword [esi + 8], 9
mov dword [esi + 0xc], 0
call sym.tcl85.dll_Tcl_AppendLimitedToObj
add esp, 0x14
push 0
push accept
push 0xffffffffffffffff
push str._but_got__
push esi
call sym.tcl85.dll_Tcl_AppendLimitedToObj
mov eax, dword [ebp + 0x18]
mov ecx, dword [ebp + 0x14]
add esp, 0x14
push 0x100bc9f9
push 0x32
push eax
push ecx
push esi
call sym.tcl85.dll_Tcl_AppendLimitedToObj
add esp, 0x14
push 0
push accept
push 0xffffffffffffffff
push 0x100bd5d4
push esi
call sym.tcl85.dll_Tcl_AppendLimitedToObj
add esp, 0x14
cmp edi, 9
jne 0x1008c82d
push 0
push accept
push 0xffffffffffffffff
push str.__looks_like_invalid_octal_number_
push esi
call sym.tcl85.dll_Tcl_AppendLimitedToObj
add esp, 0x14
push esi
mov esi, dword [ebp + 8]
push esi
call sym.tcl85.dll_Tcl_SetObjResult
push 0
push str.NUMBER
push str.VALUE
push 0x100bd75c
push esi
call sym.tcl85.dll_Tcl_SetErrorCode
add esp, 0x1c
cmp dword [esp + 0x38], 0
je 0x1008c865
lea edx, [esp + 0x70]
push edx
call sym.tcl85.dll_TclBN_mp_clear
add esp, 4
cmp dword [esp + 0x10], 0
je 0x1008c879
lea eax, [esp + 0x60]
push eax
call sym.tcl85.dll_TclBN_mp_clear
add esp, 4
mov eax, dword [esp + 0x40]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
test byte [ebp + 0x20], 0x20
mov eax, dword [esp + 0x30]
mov edx, dword [esp + 0x2c]
jne 0x1008c8b9
test edx, edx
je 0x1008c8b9
jmp 0x1008c8a0
mov cl, byte [eax]
movsx ebx, cl
test byte [ebx + 0x100b8d18], 1
jne 0x1008c8b3
cmp cl, 0xa
jne 0x1008c8b9
inc eax
sub edx, 1
jne 0x1008c8a0
mov ecx, dword [ebp + 0x1c]
test ecx, ecx
jne 0x1008c8da
test edx, edx
je 0x1008c8dc
cmp dword [ebp + 0x18], ecx
jg 0x1008c8cd
cmp byte [eax], cl
je 0x1008c8dc
mov dword [esp + 0x40], 1
jmp 0x1008c737
mov dword [ecx], eax
cmp dword [ebp + 0xc], 0
je case.default.0x1008c913
mov ecx, dword [ebp + 0xc]
mov eax, dword [ecx + 0xc]
test eax, eax
je 0x1008c8fd
mov eax, dword [eax + 4]
test eax, eax
je 0x1008c8fd
push ecx
call eax
add esp, 4
cmp dword [esp + 0x20], 0x1d
ja case.default.0x1008c913
mov edx, dword [esp + 0x20]
movzx eax, byte [edx + 0x1008ce78]
jmp dword [eax*4 + 0x1008ce54]
mov ecx, dword [ebp + 0x14]
mov edx, dword [esp + 0x20]
push ecx
push edx
push str.TclParseNumber:_bad_acceptState__d_parsing__s
call sym.tcl85.dll_Tcl_Panic
add esp, 0xc
cmp dword [esp + 0x10], 0
mov ebx, dword [esp + 0x54]
jne 0x1008c98f
mov edi, dword [esp + 0x50]
mov eax, edi
or eax, ebx
je 0x1008c98f
cmp esi, 0x40
jae 0x1008c969
mov eax, dword [esp + 0x24]
cdq
add eax, 0xffffffff
adc edx, 0x7fffffff
mov ecx, esi
call fcn.100b3db0
cmp ebx, edx
jb 0x1008c98f
ja 0x1008c969
cmp edi, eax
jbe 0x1008c98f
mov ecx, dword [esp + 0x54]
mov edx, dword [esp + 0x50]
push ecx
push edx
lea esi, [esp + 0x68]
mov dword [esp + 0x18], 1
call fcn.10091e40
mov ebx, dword [esp + 0x5c]
mov esi, dword [esp + 0x1c]
add esp, 8
test esi, esi
je 0x1008c9c4
cmp dword [esp + 0x10], 0
jne 0x1008c9b3
mov eax, dword [esp + 0x50]
mov edx, ebx
mov ecx, esi
call fcn.100b3b70
mov ebx, edx
mov dword [esp + 0x50], eax
mov dword [esp + 0x54], ebx
jmp 0x1008c9cf
lea eax, [esp + 0x60]
push eax
push esi
mov ecx, eax
push ecx
call sym.tcl85.dll_TclBN_mp_mul_2d
add esp, 0xc
cmp dword [esp + 0x10], 0
jne 0x1008cc85
mov edi, dword [esp + 0x24]
mov esi, dword [esp + 0x50]
xor eax, eax
lea ecx, [edi + 0x7fffffff]
cmp ebx, eax
jb 0x1008cccd
ja 0x1008c9f1
cmp esi, ecx
jbe 0x1008cccd
mov eax, edi
cdq
add eax, 0xffffffff
adc edx, 0x7fffffff
cmp ebx, edx
ja 0x1008ccad
jb 0x1008ca0f
cmp esi, eax
ja 0x1008ccad
mov eax, dword [ebp + 0xc]
mov dword [eax + 0xc], 0x100d2618
test edi, edi
je 0x1008ca24
neg esi
adc ebx, 0
neg ebx
mov dword [eax + 0x10], esi
mov dword [eax + 0x14], ebx
jmp case.default.0x1008c913
cmp dword [esp + 0x10], 0
mov ebx, dword [esp + 0x54]
lea edi, [esi*4]
jne 0x1008ca91
mov edx, dword [esp + 0x50]
or edx, ebx
je 0x1008ca91
cmp edi, 0x40
jae 0x1008ca6f
mov eax, dword [esp + 0x24]
cdq
add eax, 0xffffffff
adc edx, 0x7fffffff
mov ecx, edi
call fcn.100b3db0
cmp ebx, edx
jb 0x1008ca91
ja 0x1008ca6f
cmp dword [esp + 0x50], eax
jbe 0x1008ca91
mov eax, dword [esp + 0x54]
mov ecx, dword [esp + 0x50]
push eax
push ecx
lea esi, [esp + 0x68]
mov dword [esp + 0x18], 1
call fcn.10091e40
mov ebx, dword [esp + 0x5c]
add esp, 8
test edi, edi
je 0x1008c9c4
cmp dword [esp + 0x10], 0
jne 0x1008cabc
mov eax, dword [esp + 0x50]
mov edx, ebx
mov ecx, edi
call fcn.100b3b70
mov ebx, edx
mov dword [esp + 0x50], eax
mov dword [esp + 0x54], ebx
jmp 0x1008c9cf
lea edx, [esp + 0x60]
push edx
push edi
mov eax, edx
push eax
jmp 0x1008c9bc
cmp dword [esp + 0x38], 0
mov ebx, dword [esp + 0x58]
lea edi, [esi + esi*2]
mov esi, dword [esp + 0x5c]
jne 0x1008cb2c
mov ecx, ebx
or ecx, esi
je 0x1008cb2c
cmp edi, 0x40
jae 0x1008cb06
mov eax, dword [esp + 0x24]
cdq
add eax, 0xffffffff
adc edx, 0x7fffffff
mov ecx, edi
call fcn.100b3db0
cmp esi, edx
jb 0x1008cb2c
ja 0x1008cb06
cmp ebx, eax
jbe 0x1008cb2c
mov edx, dword [esp + 0x5c]
mov eax, dword [esp + 0x58]
push edx
push eax
lea esi, [esp + 0x78]
mov dword [esp + 0x40], 1
call fcn.10091e40
mov esi, dword [esp + 0x64]
mov ebx, dword [esp + 0x60]
add esp, 8
test edi, edi
je 0x1008cb61
cmp dword [esp + 0x38], 0
jne 0x1008cb50
mov eax, ebx
mov edx, esi
mov ecx, edi
call fcn.100b3b70
mov ebx, eax
mov esi, edx
mov dword [esp + 0x58], ebx
mov dword [esp + 0x5c], esi
jmp 0x1008cb68
lea ecx, [esp + 0x70]
push ecx
mov edx, ecx
push edi
push edx
call sym.tcl85.dll_TclBN_mp_mul_2d
add esp, 0xc
cmp dword [esp + 0x38], 0
jne 0x1008cbde
mov edx, dword [esp + 0x24]
xor eax, eax
lea ecx, [edx + 0x7fffffff]
cmp esi, eax
jb 0x1008cc06
ja 0x1008cb86
cmp ebx, ecx
jbe 0x1008cc06
mov ecx, dword [esp + 0x24]
mov eax, ecx
cdq
add eax, 0xffffffff
adc edx, 0x7fffffff
cmp esi, edx
ja 0x1008cbc0
jb 0x1008cba0
cmp ebx, eax
ja 0x1008cbc0
mov eax, dword [ebp + 0xc]
mov dword [eax + 0xc], 0x100d2618
test ecx, ecx
je 0x1008cbb5
neg ebx
adc esi, 0
neg esi
mov dword [eax + 0x10], ebx
mov dword [eax + 0x14], esi
jmp 0x1008c865
mov eax, dword [esp + 0x5c]
mov ecx, dword [esp + 0x58]
push eax
push ecx
lea esi, [esp + 0x78]
call fcn.10091e40
add esp, 8
mov dword [esp + 0x38], 1
cmp dword [esp + 0x24], 0
je 0x1008cbf5
lea edx, [esp + 0x70]
push edx
mov eax, edx
push eax
call sym.tcl85.dll_TclBN_mp_neg
add esp, 8
mov ebx, dword [ebp + 0xc]
lea esi, [esp + 0x70]
call fcn.100792e0
jmp case.default.0x1008c913
mov eax, dword [ebp + 0xc]
mov dword [eax + 0xc], 0x100d2604
test edx, edx
je 0x1008cc16
neg ebx
mov dword [eax + 0x10], ebx
jmp 0x1008c865
mov ecx, dword [esp + 0x10]
push ecx
lea edx, [esp + 0x54]
push edx
lea ecx, [esi - 1]
push 0
lea eax, [esp + 0x6c]
call fcn.1008cea0
add esp, 0xc
mov dword [esp + 0x10], eax
test eax, eax
jne 0x1008cc85
mov eax, dword [esp + 0x24]
mov ebx, dword [esp + 0x54]
cdq
add eax, 0xffffffff
adc edx, 0x7fffffff
cmp ebx, edx
jb 0x1008c9c4
ja 0x1008cc67
cmp dword [esp + 0x50], eax
jbe 0x1008c9c4
mov eax, dword [esp + 0x54]
mov ecx, dword [esp + 0x50]
push eax
push ecx
lea esi, [esp + 0x68]
mov dword [esp + 0x18], 1
call fcn.10091e40
add esp, 8
cmp dword [esp + 0x24], 0
je 0x1008cc9c
lea ecx, [esp + 0x60]
push ecx
mov edx, ecx
push edx
call sym.tcl85.dll_TclBN_mp_neg
add esp, 8
mov ebx, dword [ebp + 0xc]
lea esi, [esp + 0x60]
call fcn.100792e0
jmp case.default.0x1008c913
mov edx, dword [esp + 0x54]
mov eax, dword [esp + 0x50]
push edx
push eax
lea esi, [esp + 0x68]
call fcn.10091e40
add esp, 8
mov dword [esp + 0x10], 1
jmp 0x1008cc85
mov eax, dword [ebp + 0xc]
mov dword [eax + 0xc], 0x100d2604
test edi, edi
je 0x1008ccdd
neg esi
mov dword [eax + 0x10], esi
jmp case.default.0x1008c913
cmp dword [esp + 0x48], 0
mov eax, dword [ebp + 0xc]
mov dword [eax + 0xc], 0x100d25f0
je 0x1008cd00
mov ecx, dword [esp + 0x34]
neg ecx
mov dword [esp + 0x34], ecx
cmp dword [esp + 0x10], 0
jne 0x1008cd37
mov edx, dword [esp + 0x54]
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x50]
sub eax, dword [esp + 0x3c]
mov ebx, dword [esp + 0x18]
push edx
mov edx, dword [esp + 0x28]
push ecx
add eax, esi
push edx
call fcn.1008d010
mov eax, dword [ebp + 0xc]
fstp qword [eax + 0x10]
add esp, 0xc
jmp case.default.0x1008c913
mov esi, dword [esp + 0x34]
sub esi, dword [esp + 0x3c]
mov ecx, dword [esp + 0x24]
add esi, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
push ecx
lea edi, [esp + 0x64]
call fcn.1008d0f0
mov edx, dword [ebp + 0xc]
fstp qword [edx + 0x10]
add esp, 4
jmp case.default.0x1008c913
cmp dword [esp + 0x24], 0
mov eax, dword [sym.imp.MSVCR90.dll__HUGE]
je 0x1008cd85
fld qword [eax]
mov eax, dword [ebp + 0xc]
fchs
mov dword [eax + 0xc], 0x100d25f0
fstp qword [eax + 0x10]
jmp case.default.0x1008c913
mov ecx, dword [eax]
mov edx, dword [eax + 4]
mov eax, dword [ebp + 0xc]
mov dword [eax + 0x10], ecx
mov dword [eax + 0x14], edx
mov dword [eax + 0xc], 0x100d25f0
jmp case.default.0x1008c913
mov eax, dword [esp + 0x54]
mov ecx, dword [esp + 0x50]
mov edx, dword [esp + 0x24]
push eax
push ecx
push edx
call fcn.1008d270
mov eax, dword [ebp + 0xc]
fstp qword [eax + 0x10]
add esp, 0xc
mov dword [eax + 0xc], 0x100d25f0
jmp case.default.0x1008c913
push str.TclParseNumber:_state_INITIAL_cant_happen_here
call sym.tcl85.dll_Tcl_Panic
add esp, 4
jmp case.default.0x1008c913