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

Disassembly:
sub esp, 0x74
mov eax, dword [esp + 0x84]
mov ecx, dword [esp + 0x7c]
push ebx
push ebp
push esi
push edi
xor esi, esi
xor ebp, ebp
xor edi, edi
cmp eax, esi
mov dword [esp + 0x30], esi
mov dword [esp + 0x20], esi
mov dword [esp + 0x54], esi
mov dword [esp + 0x58], esi
mov dword [esp + 0x18], esi
mov dword [esp + 0x5c], esi
mov dword [esp + 0x60], esi
mov dword [esp + 0x3c], esi
mov dword [esp + 0x1c], esi
mov dword [esp + 0x14], edi
mov dword [esp + 0x44], esi
mov dword [esp + 0x50], esi
mov dword [esp + 0x40], esi
mov dword [esp + 0x48], esi
mov byte [esp + 0x13], 0
mov dword [esp + 0x4c], esi
jne 0x4bd704
mov eax, dword [ecx + 4]
cmp eax, esi
jne 0x4bd6fd
push ecx
call fcn.0044c840
add esp, 4
mov dword [esp + 0x94], eax
mov ecx, dword [esp + 0x98]
mov dword [esp + 0x24], eax
mov dword [esp + 0x28], ecx
mov dword [esp + 0x34], eax
mov dword [esp + 0x38], ecx
cmp dword [esp + 0x28], esi
je 0x4bd729
mov eax, dword [esp + 0x24]
mov bl, byte [eax]
jmp 0x4bd72b
xor bl, bl
cmp ebp, 0x1d
mov byte [esp + 0x2c], bl
ja case.default.0x4bd73c
mov esi, dword [esp + 0x2c]
jmp dword [ebp*4 + 0x4be940]
mov ecx, dword [sym.imp.MSVCRT.dll___mb_cur_max]
cmp dword [ecx], 1
jle 0x4bd764
mov edx, esi
push 8
and edx, 0xff
push edx
call dword [sym.imp.MSVCRT.dll__isctype]
add esp, 8
jmp 0x4bd779
mov ecx, dword [sym.imp.MSVCRT.dll__pctype]
mov eax, esi
and eax, 0xff
mov edx, dword [ecx]
mov al, byte [edx + eax*2]
and eax, 8
test eax, eax
je 0x4bd790
test byte [esp + 0xa0], 0x20
jne 0x4be28a
jmp case.default.0x4bd73c
cmp bl, 0x2b
jne 0x4bd79f
mov ebp, 1
jmp case.default.0x4bd73c
cmp bl, 0x2d
jne case.0x4bd73c.1
mov ebp, 1
mov dword [esp + 0x20], ebp
jmp case.default.0x4bd73c
cmp bl, 0x30
jne 0x4bd7cd
movsx ebp, byte [esp + 0xa0]
and ebp, 1
shl ebp, 3
or ebp, 2
jmp case.default.0x4bd73c
mov cl, byte [esp + 0xa0]
test cl, 4
jne case.0x4bd73c.3
test cl, 2
jne case.0x4bd73c.4
mov eax, dword [sym.imp.MSVCRT.dll___mb_cur_max]
cmp dword [eax], 1
jle 0x4bd80b
and esi, 0xff
push 4
push esi
call dword [sym.imp.MSVCRT.dll__isctype]
mov cl, byte [esp + 0xa8]
add esp, 8
jmp 0x4bd81f
mov edx, dword [sym.imp.MSVCRT.dll__pctype]
and esi, 0xff
mov eax, dword [edx]
mov al, byte [eax + esi*2]
and eax, 4
test eax, eax
je 0x4bd844
movsx eax, bl
sub eax, 0x30
mov dword [esp + 0x1c], 1
cdq
mov dword [esp + 0x54], eax
mov dword [esp + 0x58], edx
mov ebp, 0xa
jmp case.default.0x4bd73c
test cl, 8
jne 0x4be28a
cmp bl, 0x2e
jne 0x4bd85c
mov ebp, 0xb
jmp case.default.0x4bd73c
cmp bl, 0x49
je 0x4bd87e
cmp bl, 0x69
je 0x4bd87e
cmp bl, 0x4e
je 0x4bd874
cmp bl, 0x6e
jne 0x4be28a
mov ebp, 0x18
jmp case.default.0x4bd73c
mov ebp, 0x10
jmp case.default.0x4bd73c
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
cmp bl, 0x78
mov dword [esp + 0x30], 2
mov dword [esp + 0x34], ecx
mov dword [esp + 0x38], edx
je 0x4bd8ed
cmp bl, 0x58
je 0x4bd8ed
mov al, byte [esp + 0xa0]
test al, 4
jne case.0x4bd73c.3
test al, 0x10
jne case.0x4bd73c.4
cmp bl, 0x62
je 0x4bd8e3
cmp bl, 0x42
je 0x4bd8e3
cmp bl, 0x6f
je 0x4bd8d1
cmp bl, 0x4f
jne case.0x4bd73c.8
mov dword [esp + 0x4c], 1
mov ebp, 4
jmp case.default.0x4bd73c
mov ebp, 5
jmp case.default.0x4bd73c
mov ebp, 3
jmp case.default.0x4bd73c
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x30], ebp
mov dword [esp + 0x34], eax
mov dword [esp + 0x38], ecx
cmp bl, 0x30
jne 0x4bd91f
inc edi
mov ebp, 8
mov dword [esp + 0x14], edi
jmp case.default.0x4bd73c
cmp bl, 0x31
jl case.0x4bd73c.9
cmp bl, 0x37
jg case.0x4bd73c.9
mov eax, dword [esp + 0x8c]
test eax, eax
je 0x4bd9e5
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x14]
movsx edi, bl
push edx
lea ecx, [esp + 0x68]
lea edx, [esp + 0x58]
push ecx
lea ebx, [edi - 0x30]
push edx
push eax
push ebx
lea esi, [eax + eax*2 + 3]
call fcn.004bea30
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x50]
add esp, 0x14
test eax, eax
jne 0x4bd9bc
mov eax, dword [esp + 0x5c]
mov ebp, dword [esp + 0x60]
or eax, ebp
je 0x4bda0f
cmp esi, 0x40
jae 0x4bd9a1
mov ecx, esi
or eax, 0xffffffff
or edx, 0xffffffff
call fcn.004e41f0
cmp ebp, edx
jb 0x4bda0f
ja 0x4bd9a1
cmp dword [esp + 0x5c], eax
jbe 0x4bda0f
mov ecx, dword [esp + 0x5c]
push ebp
lea edx, [esp + 0x78]
push ecx
push edx
mov dword [esp + 0x48], 1
call fcn.004a4e50
add esp, 0xc
lea eax, [esp + 0x74]
lea ecx, [esp + 0x74]
push eax
push esi
push ecx
call fcn.004dbcf0
lea edx, [esp + 0x80]
lea eax, [esp + 0x80]
push edx
push ebx
push eax
call fcn.004c15e0
add esp, 0x18
mov eax, dword [esp + 0x1c]
test eax, eax
je 0x4bda32
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x14], 0
mov edi, dword [esp + 0x14]
mov ebp, 8
lea edx, [eax + ecx + 1]
mov dword [esp + 0x1c], edx
jmp case.default.0x4bd73c
lea eax, [edi - 0x30]
mov ecx, esi
cdq
mov edi, eax
mov eax, dword [esp + 0x5c]
mov ebx, edx
mov edx, ebp
call fcn.004e3ed0
add edi, eax
adc ebx, edx
mov dword [esp + 0x5c], edi
mov dword [esp + 0x60], ebx
jmp 0x4bd9e5
mov dword [esp + 0x14], 0
mov dword [esp + 0x1c], 1
mov edi, dword [esp + 0x14]
mov ebp, 8
jmp case.default.0x4bd73c
mov eax, dword [esp + 0x4c]
test eax, eax
jne 0x4be28a
test byte [esp + 0xa0], 8
jne 0x4be28a
cmp bl, 0x30
jne 0x4bda7e
inc edi
mov ebp, 9
mov dword [esp + 0x14], edi
jmp case.default.0x4bd73c
mov eax, dword [sym.imp.MSVCRT.dll___mb_cur_max]
cmp dword [eax], 1
jle 0x4bda9c
and esi, 0xff
push 4
push esi
call dword [sym.imp.MSVCRT.dll__isctype]
add esp, 8
jmp 0x4bdab0
mov ecx, dword [sym.imp.MSVCRT.dll__pctype]
and esi, 0xff
mov edx, dword [ecx]
mov al, byte [edx + esi*2]
and eax, 4
test eax, eax
je 0x4bdb1a
mov eax, dword [esp + 0x8c]
test eax, eax
je 0x4bdae2
mov eax, dword [esp + 0x18]
lea ecx, [esp + 0x64]
push eax
lea edx, [esp + 0x58]
movsx eax, bl
push ecx
push edx
sub eax, 0x30
push edi
push eax
call fcn.004bea30
add esp, 0x14
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x1c]
test eax, eax
je 0x4bdb02
lea ecx, [eax + edi + 1]
xor edi, edi
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x14], edi
mov ebp, 9
jmp case.default.0x4bd73c
xor edi, edi
mov dword [esp + 0x1c], 1
mov dword [esp + 0x14], edi
mov ebp, 9
jmp case.default.0x4bd73c
cmp bl, 0x2e
jne 0x4bdb29
mov ebp, 0xc
jmp case.default.0x4bd73c
cmp bl, 0x45
je 0x4bdb37
cmp bl, 0x65
jne 0x4be28a
mov ebp, 0xd
jmp case.default.0x4bd73c
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x28]
mov dword [esp + 0x30], 7
mov dword [esp + 0x34], edx
mov dword [esp + 0x38], eax
cmp bl, 0x30
jne 0x4bdb6d
inc edi
mov ebp, 7
mov dword [esp + 0x14], edi
jmp case.default.0x4bd73c
mov ecx, dword [sym.imp.MSVCRT.dll___mb_cur_max]
cmp dword [ecx], 1
jle 0x4bdb8c
and esi, 0xff
push 4
push esi
call dword [sym.imp.MSVCRT.dll__isctype]
add esp, 8
jmp 0x4bdba0
mov edx, dword [sym.imp.MSVCRT.dll__pctype]
and esi, 0xff
mov eax, dword [edx]
mov al, byte [eax + esi*2]
and eax, 4
test eax, eax
je 0x4bdba9
sub bl, 0x30
jmp 0x4bdbcd
cmp bl, 0x41
jl 0x4bdbb8
cmp bl, 0x46
jg 0x4bdbb8
sub bl, 0x37
jmp 0x4bdbcd
cmp bl, 0x61
jl 0x4be28a
cmp bl, 0x66
jg 0x4be28a
sub bl, 0x57
mov eax, dword [esp + 0x8c]
mov byte [esp + 0x13], bl
test eax, eax
je 0x4bdc62
mov eax, dword [esp + 0x18]
lea esi, [edi*4 + 4]
test eax, eax
jne 0x4bdc3a
mov ecx, dword [esp + 0x54]
mov eax, dword [esp + 0x58]
or ecx, eax
je 0x4bdc72
cmp esi, 0x40
jae 0x4bdc1b
mov ecx, esi
or eax, 0xffffffff
or edx, 0xffffffff
call fcn.004e41f0
cmp dword [esp + 0x58], edx
jb 0x4bdc72
ja 0x4bdc1b
cmp dword [esp + 0x54], eax
jbe 0x4bdc72
mov edx, dword [esp + 0x58]
mov eax, dword [esp + 0x54]
push edx
lea ecx, [esp + 0x68]
push eax
push ecx
mov dword [esp + 0x24], 1
call fcn.004a4e50
add esp, 0xc
lea edx, [esp + 0x64]
lea eax, [esp + 0x64]
push edx
push esi
push eax
call fcn.004dbcf0
movsx edx, byte [esp + 0x1f]
lea ecx, [esp + 0x70]
lea eax, [esp + 0x70]
push ecx
push edx
push eax
call fcn.004c15e0
add esp, 0x18
xor edi, edi
mov ebp, 7
mov dword [esp + 0x14], edi
jmp case.default.0x4bd73c
mov eax, dword [esp + 0x54]
mov edx, dword [esp + 0x58]
mov ecx, esi
call fcn.004e3ed0
mov ecx, eax
mov esi, edx
movsx eax, byte [esp + 0x13]
cdq
add ecx, eax
mov ebp, 7
adc esi, edx
xor edi, edi
mov dword [esp + 0x54], ecx
mov dword [esp + 0x58], esi
mov dword [esp + 0x14], edi
jmp case.default.0x4bd73c
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
mov dword [esp + 0x30], 6
mov dword [esp + 0x34], ecx
mov dword [esp + 0x38], edx
cmp bl, 0x30
jne 0x4bdcd3
inc edi
mov ebp, 6
mov dword [esp + 0x14], edi
jmp case.default.0x4bd73c
cmp bl, 0x31
jne 0x4be28a
mov eax, dword [esp + 0x8c]
test eax, eax
je 0x4bdd61
mov eax, dword [esp + 0x18]
lea esi, [edi + 1]
test eax, eax
jne 0x4bdd3d
mov eax, dword [esp + 0x54]
mov ecx, dword [esp + 0x58]
or eax, ecx
je 0x4bdd71
cmp esi, 0x40
jae 0x4bdd1e
mov ecx, esi
or eax, 0xffffffff
or edx, 0xffffffff
call fcn.004e41f0
cmp dword [esp + 0x58], edx
jb 0x4bdd71
ja 0x4bdd1e
cmp dword [esp + 0x54], eax
jbe 0x4bdd71
mov ecx, dword [esp + 0x58]
mov edx, dword [esp + 0x54]
push ecx
lea eax, [esp + 0x68]
push edx
push eax
mov dword [esp + 0x24], 1
call fcn.004a4e50
add esp, 0xc
lea ecx, [esp + 0x64]
lea edx, [esp + 0x64]
push ecx
push esi
push edx
call fcn.004dbcf0
lea eax, [esp + 0x70]
lea ecx, [esp + 0x70]
push eax
push 1
push ecx
call fcn.004c15e0
add esp, 0x18
xor edi, edi
mov ebp, 6
mov dword [esp + 0x14], edi
jmp case.default.0x4bd73c
mov eax, dword [esp + 0x54]
mov edx, dword [esp + 0x58]
mov ecx, esi
call fcn.004e3ed0
add eax, 1
mov ebp, 6
adc edx, 0
xor edi, edi
mov dword [esp + 0x54], eax
mov dword [esp + 0x58], edx
mov dword [esp + 0x14], edi
jmp case.default.0x4bd73c
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x28]
cmp bl, 0x30
mov dword [esp + 0x30], 0xa
mov dword [esp + 0x34], edx
mov dword [esp + 0x38], eax
jne 0x4bddca
inc edi
mov ebp, 0xa
mov dword [esp + 0x14], edi
jmp case.default.0x4bd73c
mov ecx, dword [sym.imp.MSVCRT.dll___mb_cur_max]
cmp dword [ecx], 1
jle 0x4bdded
mov edx, dword [esp + 0x2c]
push 4
and edx, 0xff
push edx
call dword [sym.imp.MSVCRT.dll__isctype]
add esp, 8
jmp 0x4bde04
mov ecx, dword [sym.imp.MSVCRT.dll__pctype]
mov eax, dword [esp + 0x2c]
and eax, 0xff
mov edx, dword [ecx]
mov al, byte [edx + eax*2]
and eax, 4
test eax, eax
je 0x4bde52
mov eax, dword [esp + 0x8c]
test eax, eax
je 0x4bde36
mov eax, dword [esp + 0x18]
lea ecx, [esp + 0x64]
push eax
lea edx, [esp + 0x58]
movsx eax, bl
push ecx
push edx
sub eax, 0x30
push edi
push eax
call fcn.004bea30
add esp, 0x14
mov dword [esp + 0x18], eax
mov ecx, dword [esp + 0x1c]
mov ebp, 0xa
lea edx, [ecx + edi + 1]
xor edi, edi
mov dword [esp + 0x1c], edx
mov dword [esp + 0x14], edi
jmp case.default.0x4bd73c
test byte [esp + 0xa0], 8
jne 0x4be3d1
cmp bl, 0x2e
jne 0x4bde6f
mov ebp, 0xc
jmp case.default.0x4bd73c
cmp bl, 0x45
je 0x4bde7d
cmp bl, 0x65
jne 0x4be3d1
mov ebp, 0xd
jmp case.default.0x4bd73c
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
cmp bl, 0x45
mov dword [esp + 0x30], 0xc
mov dword [esp + 0x34], eax
mov dword [esp + 0x38], ecx
je 0x4bdea9
cmp bl, 0x65
jne case.0x4bd73c.11
mov ebp, 0xd
jmp case.default.0x4bd73c
cmp bl, 0x30
jne 0x4bded0
mov ecx, dword [esp + 0x44]
mov ebp, 0xc
inc ecx
inc edi
mov dword [esp + 0x44], ecx
mov dword [esp + 0x14], edi
jmp case.default.0x4bd73c
mov edx, dword [sym.imp.MSVCRT.dll___mb_cur_max]
cmp dword [edx], 1
jle 0x4bdef2
mov eax, dword [esp + 0x2c]
push 4
and eax, 0xff
push eax
call dword [sym.imp.MSVCRT.dll__isctype]
add esp, 8
jmp 0x4bdf0a
mov edx, dword [sym.imp.MSVCRT.dll__pctype]
mov ecx, dword [esp + 0x2c]
and ecx, 0xff
mov eax, dword [edx]
mov al, byte [eax + ecx*2]
and eax, 4
test eax, eax
je 0x4be28a
mov ecx, dword [esp + 0x44]
mov eax, dword [esp + 0x8c]
inc ecx
test eax, eax
mov dword [esp + 0x44], ecx
je 0x4bdf49
mov ecx, dword [esp + 0x18]
lea edx, [esp + 0x64]
push ecx
lea eax, [esp + 0x58]
movsx ecx, bl
push edx
push eax
sub ecx, 0x30
push edi
push ecx
call fcn.004bea30
add esp, 0x14
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x1c]
test eax, eax
je 0x4bdf69
lea edx, [eax + edi + 1]
xor edi, edi
mov dword [esp + 0x1c], edx
mov dword [esp + 0x14], edi
mov ebp, 0xc
jmp case.default.0x4bd73c
xor edi, edi
mov dword [esp + 0x1c], 1
mov dword [esp + 0x14], edi
mov ebp, 0xc
jmp case.default.0x4bd73c
cmp bl, 0x2b
jne 0x4bdf90
mov ebp, 0xe
jmp case.default.0x4bd73c
cmp bl, 0x2d
jne case.0x4bd73c.14
mov dword [esp + 0x50], 1
mov ebp, 0xe
jmp case.default.0x4bd73c
mov eax, dword [sym.imp.MSVCRT.dll___mb_cur_max]
cmp dword [eax], 1
jle 0x4bdfc9
mov ecx, dword [esp + 0x2c]
push 4
and ecx, 0xff
push ecx
call dword [sym.imp.MSVCRT.dll__isctype]
add esp, 8
jmp 0x4bdfe0
mov eax, dword [sym.imp.MSVCRT.dll__pctype]
mov edx, dword [esp + 0x2c]
and edx, 0xff
mov ecx, dword [eax]
mov al, byte [ecx + edx*2]
and eax, 4
test eax, eax
je 0x4be28a
movsx eax, bl
sub eax, 0x30
mov ebp, 0xf
mov dword [esp + 0x40], eax
jmp case.default.0x4bd73c
mov eax, dword [esp + 0x28]
mov ecx, dword [sym.imp.MSVCRT.dll___mb_cur_max]
mov edx, dword [esp + 0x24]
mov dword [esp + 0x38], eax
mov eax, dword [ecx]
mov dword [esp + 0x30], 0xf
cmp eax, 1
mov dword [esp + 0x34], edx
jle 0x4be039
mov edx, dword [esp + 0x2c]
push 4
and edx, 0xff
push edx
call dword [sym.imp.MSVCRT.dll__isctype]
add esp, 8
jmp 0x4be050
mov ecx, dword [sym.imp.MSVCRT.dll__pctype]
mov eax, dword [esp + 0x2c]
and eax, 0xff
mov edx, dword [ecx]
mov al, byte [edx + eax*2]
and eax, 4
test eax, eax
je 0x4be3d1
mov eax, dword [esp + 0x40]
cmp eax, 0xccccccb
jge 0x4be07b
movsx ecx, bl
lea eax, [eax + eax*4]
mov ebp, 0xf
lea edx, [ecx + eax*2 - 0x30]
mov dword [esp + 0x40], edx
jmp case.default.0x4bd73c
mov dword [esp + 0x40], connect
mov ebp, 0xf
jmp case.default.0x4bd73c
cmp bl, 0x6e
je 0x4be09b
cmp bl, 0x4e
jne 0x4be28a
mov ebp, 0x11
jmp case.default.0x4bd73c
cmp bl, 0x66
je 0x4be0b3
cmp bl, 0x46
jne 0x4be28a
mov ebp, 0x12
jmp case.default.0x4bd73c
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
cmp bl, 0x69
mov dword [esp + 0x30], 0x12
mov dword [esp + 0x34], eax
mov dword [esp + 0x38], ecx
je 0x4be0e3
cmp bl, 0x49
jne 0x4be3d1
mov ebp, 0x13
jmp case.default.0x4bd73c
cmp bl, 0x6e
je 0x4be0fb
cmp bl, 0x4e
jne 0x4be28a
mov ebp, 0x14
jmp case.default.0x4bd73c
cmp bl, 0x69
je 0x4be113
cmp bl, 0x49
jne 0x4be28a
mov ebp, 0x15
jmp case.default.0x4bd73c
cmp bl, 0x74
je 0x4be12b
cmp bl, 0x54
jne 0x4be28a
mov ebp, 0x16
jmp case.default.0x4bd73c
cmp bl, 0x79
je 0x4be143
cmp bl, 0x59
jne 0x4be28a
mov ebp, 0x17
jmp case.default.0x4bd73c
cmp bl, 0x61
je 0x4be15b
cmp bl, 0x41
jne 0x4be28a
mov ebp, 0x19
jmp case.default.0x4bd73c
cmp bl, 0x6e
je 0x4be173
cmp bl, 0x4e
jne 0x4be28a
mov ebp, 0x1a
jmp case.default.0x4bd73c
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x28]
cmp bl, 0x28
mov dword [esp + 0x30], 0x1a
mov dword [esp + 0x34], edx
mov dword [esp + 0x38], eax
jne 0x4be3d1
mov ebp, 0x1b
jmp case.default.0x4bd73c
cmp bl, 0x29
jne case.0x4bd73c.27
mov ebp, 0x1d
jmp case.default.0x4bd73c
mov ecx, dword [sym.imp.MSVCRT.dll___mb_cur_max]
cmp dword [ecx], 1
jle 0x4be1da
mov edx, dword [esp + 0x2c]
push 8
and edx, 0xff
push edx
call dword [sym.imp.MSVCRT.dll__isctype]
add esp, 8
jmp 0x4be1f1
mov ecx, dword [sym.imp.MSVCRT.dll__pctype]
mov eax, dword [esp + 0x2c]
and eax, 0xff
mov edx, dword [ecx]
mov al, byte [edx + eax*2]
and eax, 8
test eax, eax
jne case.default.0x4bd73c
cmp dword [esp + 0x1c], 0xd
jge 0x4be28a
cmp bl, 0x30
jl 0x4be20f
cmp bl, 0x39
jg 0x4be20f
sub bl, 0x30
jmp 0x4be22b
cmp bl, 0x61
jl 0x4be21e
cmp bl, 0x66
jg 0x4be21e
sub bl, 0x57
jmp 0x4be22b
cmp bl, 0x41
jl 0x4be22f
cmp bl, 0x46
jg 0x4be22f
sub bl, 0x37
mov byte [esp + 0x13], bl
mov eax, dword [esp + 0x58]
mov ecx, dword [esp + 0x54]
push 0
push 0x10
push eax
push ecx
call fcn.004e4060
mov ecx, eax
mov esi, edx
movsx eax, byte [esp + 0x13]
cdq
add ecx, eax
mov ebp, 0x1c
adc esi, edx
mov dword [esp + 0x54], ecx
mov dword [esp + 0x58], esi
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x28]
inc ecx
dec eax
mov dword [esp + 0x24], ecx
mov dword [esp + 0x28], eax
xor esi, esi
jmp 0x4bd71b
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x28]
mov dword [esp + 0x30], ebp
mov dword [esp + 0x34], edx
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x30]
test eax, eax
jne 0x4be3d1
mov eax, dword [esp + 0x9c]
mov dword [esp + 0x48], 1
test eax, eax
je 0x4be2af
mov ecx, dword [esp + 0x24]
mov dword [eax], ecx
mov edi, dword [esp + 0x88]
test edi, edi
je case.default.0x4be48f
push 0x54330c
call fcn.0047c8a0
mov esi, dword [0x542664]
add esp, 4
test esi, esi
jne 0x4be2e0
call fcn.0044c5e0
mov esi, dword [0x542664]
mov edx, dword [esi + 0x10]
push 0x54330c
mov dword [0x542664], edx
call fcn.0047c8f0
push 0xa
mov dword [esi], 0
call fcn.0044ffd0
mov dword [esi + 4], eax
mov ecx, dword [str.expected]
mov dword [eax], ecx
mov edx, dword [0x52bcdc]
mov dword [eax + 4], edx
mov cl, byte [0x52bce0]
mov byte [eax + 8], cl
mov edx, dword [esi + 4]
mov eax, dword [esp + 0x98]
push 0xffffffffffffffff
push eax
mov byte [edx + 9], 0
push esi
mov dword [esi + 8], 9
mov dword [esi + 0xc], 0
call fcn.00451830
push 0xffffffffffffffff
push str._but_got__
push esi
call fcn.00451830
mov ecx, dword [esp + 0xb8]
mov edx, dword [esp + 0xb4]
push 0x542250
push 0x32
push ecx
push edx
push esi
call fcn.00451740
push 0xffffffffffffffff
push 0x524dac
push esi
call fcn.00451830
add esp, 0x40
cmp ebp, 9
jne 0x4be391
push 0xffffffffffffffff
push str.__looks_like_invalid_octal_number_
push esi
call fcn.00451830
add esp, 0xc
push esi
push edi
call fcn.0044ed70
add esp, 8
mov eax, dword [esp + 0x3c]
test eax, eax
je 0x4be3b0
lea eax, [esp + 0x74]
push eax
call fcn.004c03f0
add esp, 4
mov eax, dword [esp + 0x18]
pop edi
pop esi
pop ebp
test eax, eax
pop ebx
je 0x4be3c9
lea ecx, [esp + 0x54]
push ecx
call fcn.004c03f0
add esp, 4
mov eax, dword [esp + 0x38]
add esp, 0x74
ret
mov al, byte [esp + 0xa0]
mov esi, dword [esp + 0x34]
mov edi, dword [esp + 0x38]
test al, 0x20
jne 0x4be429
mov ebx, dword [esp + 0x58]
test edi, edi
je 0x4be42d
mov edx, dword [sym.imp.MSVCRT.dll___mb_cur_max]
cmp dword [edx], 1
jle 0x4be40d
xor eax, eax
push 8
mov al, byte [esi]
push eax
call dword [sym.imp.MSVCRT.dll__isctype]
mov ebx, dword [esp + 0x60]
add esp, 8
jmp 0x4be41f
mov edx, dword [sym.imp.MSVCRT.dll__pctype]
xor ecx, ecx
mov cl, byte [esi]
mov eax, dword [edx]
mov al, byte [eax + ecx*2]
and eax, 8
test eax, eax
je 0x4be42d
inc esi
dec edi
jne 0x4be3ec
jmp 0x4be42d
mov ebx, dword [esp + 0x58]
mov eax, dword [esp + 0x9c]
test eax, eax
jne 0x4be459
test edi, edi
je 0x4be45b
mov eax, dword [esp + 0x98]
test eax, eax
jg 0x4be44c
cmp byte [esi], 0
je 0x4be45b
mov dword [esp + 0x48], 1
jmp 0x4be2af
mov dword [eax], esi
mov edi, dword [esp + 0x8c]
test edi, edi
je case.default.0x4be48f
mov eax, dword [edi + 0xc]
test eax, eax
je 0x4be482
mov eax, dword [eax + 4]
test eax, eax
je 0x4be482
push edi
call eax
mov ebx, dword [esp + 0x5c]
add esp, 4
mov eax, dword [esp + 0x30]
cmp eax, 0x1d
ja case.default.0x4be48f
jmp dword [eax*4 + 0x4be9b8]
mov ecx, dword [esp + 0x94]
push ecx
push eax
push str.TclParseNumber:_bad_acceptState__d_parsing__s
call fcn.0047c670
mov ebx, dword [esp + 0x64]
add esp, 0xc
mov ebp, dword [esp + 0x18]
test ebp, ebp
jne 0x4be50c
mov edx, dword [esp + 0x54]
or edx, ebx
je 0x4be50c
mov esi, dword [esp + 0x14]
cmp esi, 0x40
jae 0x4be4ea
mov eax, dword [esp + 0x20]
mov ecx, esi
cdq
add eax, 0xffffffff
adc edx, 0x7fffffff
call fcn.004e41f0
cmp ebx, edx
jb 0x4be510
ja 0x4be4ea
cmp dword [esp + 0x54], eax
jbe 0x4be510
mov eax, dword [esp + 0x54]
push ebx
lea ecx, [esp + 0x68]
mov ebp, 1
push eax
push ecx
mov dword [esp + 0x24], ebp
call fcn.004a4e50
mov ebx, dword [esp + 0x64]
add esp, 0xc
jmp 0x4be510
mov esi, dword [esp + 0x14]
test esi, esi
je 0x4be5d7
test ebp, ebp
jne 0x4be5c0
mov eax, dword [esp + 0x54]
mov ecx, esi
mov edx, ebx
call fcn.004e3ed0
mov esi, eax
mov ebx, edx
mov dword [esp + 0x54], esi
mov dword [esp + 0x58], ebx
jmp 0x4be5e3
mov ecx, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
test ebp, ebp
lea esi, [ecx*4]
jne 0x4be59f
mov edx, dword [esp + 0x54]
or edx, ebx
je 0x4be59f
cmp esi, 0x40
jae 0x4be57f
mov eax, dword [esp + 0x20]
mov ecx, esi
cdq
add eax, 0xffffffff
adc edx, 0x7fffffff
call fcn.004e41f0
cmp ebx, edx
jb 0x4be59f
ja 0x4be57f
cmp dword [esp + 0x54], eax
jbe 0x4be59f
mov eax, dword [esp + 0x54]
push ebx
lea ecx, [esp + 0x68]
mov ebp, 1
push eax
push ecx
mov dword [esp + 0x24], ebp
call fcn.004a4e50
mov ebx, dword [esp + 0x64]
add esp, 0xc
test esi, esi
je 0x4be5d7
test ebp, ebp
jne 0x4be5c0
mov eax, dword [esp + 0x54]
mov ecx, esi
mov edx, ebx
call fcn.004e3ed0
mov ebx, edx
mov dword [esp + 0x54], eax
mov dword [esp + 0x58], ebx
jmp 0x4be5df
lea edx, [esp + 0x64]
lea eax, [esp + 0x64]
push edx
push esi
push eax
call fcn.004dbcf0
mov ebx, dword [esp + 0x64]
add esp, 0xc
test ebp, ebp
jne 0x4be800
mov esi, dword [esp + 0x54]
mov edx, dword [esp + 0x20]
xor eax, eax
cmp ebx, eax
lea ecx, [edx + 0x7fffffff]
jb 0x4be843
ja 0x4be601
cmp esi, ecx
jbe 0x4be843
mov ecx, dword [esp + 0x20]
mov eax, ecx
cdq
add eax, 0xffffffff
adc edx, 0x7fffffff
cmp ebx, edx
ja 0x4be82a
jb 0x4be623
cmp esi, eax
ja 0x4be82a
test ecx, ecx
mov dword [edi + 0xc], 0x52b4b0
je 0x4be635
neg esi
adc ebx, 0
neg ebx
mov dword [edi + 0x10], esi
mov dword [edi + 0x14], ebx
jmp case.default.0x4be48f
mov esi, dword [esp + 0x14]
mov eax, dword [esp + 0x3c]
test eax, eax
lea esi, [esi + esi*2]
jne 0x4be69c
mov ebx, dword [esp + 0x5c]
mov edi, dword [esp + 0x60]
mov ecx, ebx
or ecx, edi
je 0x4be6aa
mov ebp, dword [esp + 0x20]
cmp esi, 0x40
jae 0x4be683
mov eax, ebp
mov ecx, esi
cdq
add eax, 0xffffffff
adc edx, 0x7fffffff
call fcn.004e41f0
cmp edi, edx
jb 0x4be6ae
ja 0x4be683
cmp ebx, eax
jbe 0x4be6ae
push edi
lea edx, [esp + 0x78]
push ebx
push edx
mov dword [esp + 0x48], 1
call fcn.004a4e50
add esp, 0xc
jmp 0x4be6ae
mov ebp, dword [esp + 0x20]
mov ebx, dword [esp + 0x5c]
mov edi, dword [esp + 0x60]
jmp 0x4be6ae
mov ebp, dword [esp + 0x20]
test esi, esi
je 0x4be6de
mov eax, dword [esp + 0x3c]
test eax, eax
jne 0x4be6cb
mov ecx, esi
mov eax, ebx
mov edx, edi
call fcn.004e3ed0
mov ebx, eax
mov edi, edx
jmp 0x4be6e6
lea eax, [esp + 0x74]
lea ecx, [esp + 0x74]
push eax
push esi
push ecx
call fcn.004dbcf0
add esp, 0xc
mov eax, dword [esp + 0x3c]
test eax, eax
jne 0x4be74d
xor eax, eax
lea ecx, [ebp + 0x7fffffff]
cmp edi, eax
jb 0x4be77a
ja 0x4be6fc
cmp ebx, ecx
jbe 0x4be77a
mov eax, ebp
cdq
add eax, 0xffffffff
adc edx, 0x7fffffff
cmp edi, edx
ja 0x4be736
jb 0x4be712
cmp ebx, eax
ja 0x4be736
mov eax, dword [esp + 0x8c]
test ebp, ebp
mov dword [eax + 0xc], 0x52b4b0
je 0x4be72b
neg ebx
adc edi, 0
neg edi
mov dword [eax + 0x10], ebx
mov dword [eax + 0x14], edi
jmp 0x4be3b0
push edi
lea edx, [esp + 0x78]
push ebx
push edx
call fcn.004a4e50
add esp, 0xc
mov dword [esp + 0x3c], 1
test ebp, ebp
je 0x4be763
lea eax, [esp + 0x74]
lea ecx, [esp + 0x74]
push eax
push ecx
call fcn.004c0740
add esp, 8
mov eax, dword [esp + 0x8c]
lea edx, [esp + 0x74]
push edx
push eax
call fcn.0044e230
jmp 0x4be398
mov eax, dword [esp + 0x8c]
test ebp, ebp
mov dword [eax + 0xc], 0x52b498
je 0x4be78e
neg ebx
mov dword [eax + 0x10], ebx
jmp 0x4be3b0
mov ecx, dword [esp + 0x18]
lea edx, [esp + 0x64]
push ecx
mov ecx, dword [esp + 0x18]
lea eax, [esp + 0x58]
push edx
dec ecx
push eax
push ecx
push 0
call fcn.004bea30
mov ebp, eax
add esp, 0x14
test ebp, ebp
mov dword [esp + 0x18], ebp
jne 0x4be800
mov eax, dword [esp + 0x20]
mov ebx, dword [esp + 0x58]
cdq
add eax, 0xffffffff
adc edx, 0x7fffffff
cmp ebx, edx
jb 0x4be5d7
ja 0x4be7e5
cmp dword [esp + 0x54], eax
jbe 0x4be5d7
mov edx, dword [esp + 0x54]
push ebx
lea eax, [esp + 0x68]
push edx
push eax
mov dword [esp + 0x24], 1
call fcn.004a4e50
add esp, 0xc
mov eax, dword [esp + 0x20]
test eax, eax
je 0x4be81a
lea edx, [esp + 0x64]
lea eax, [esp + 0x64]
push edx
push eax
call fcn.004c0740
add esp, 8
lea ecx, [esp + 0x64]
push ecx
push edi
call fcn.0044e230
jmp 0x4be398
push ebx
lea ecx, [esp + 0x68]
push esi
push ecx
call fcn.004a4e50
add esp, 0xc
mov dword [esp + 0x18], 1
jmp 0x4be800
test edx, edx
mov dword [edi + 0xc], 0x52b498
je 0x4be850
neg esi
mov dword [edi + 0x10], esi
jmp case.default.0x4be48f
mov eax, dword [esp + 0x50]
mov dword [edi + 0xc], 0x52b480
test eax, eax
mov eax, dword [esp + 0x40]
je 0x4be86d
neg eax
mov ecx, dword [esp + 0x18]
test ecx, ecx
jne 0x4be8a2
mov esi, dword [esp + 0x44]
mov edx, dword [esp + 0x14]
mov ecx, dword [esp + 0x20]
sub eax, esi
add eax, edx
mov edx, dword [esp + 0x1c]
push eax
mov eax, dword [esp + 0x58]
push edx
push ebx
push eax
push ecx
call fcn.004bebb0
fstp qword [edi + 0x10]
add esp, 0x14
jmp case.default.0x4be48f
mov edx, dword [esp + 0x44]
mov ecx, dword [esp + 0x14]
sub eax, edx
mov edx, dword [esp + 0x1c]
add eax, ecx
mov ecx, dword [esp + 0x20]
push eax
lea eax, [esp + 0x68]
push edx
push eax
push ecx
call fcn.004becb0
fstp qword [edi + 0x10]
add esp, 0x10
jmp case.default.0x4be48f
mov eax, dword [esp + 0x20]
test eax, eax
je 0x4be8ef
mov edx, dword [sym.imp.MSVCRT.dll__HUGE]
fld qword [edx]
fchs
fstp qword [edi + 0x10]
mov dword [edi + 0xc], 0x52b480
jmp case.default.0x4be48f
mov eax, dword [sym.imp.MSVCRT.dll__HUGE]
mov ecx, dword [eax]
mov dword [edi + 0x10], ecx
mov edx, dword [eax + 4]
mov dword [edi + 0xc], 0x52b480
mov dword [edi + 0x14], edx
jmp case.default.0x4be48f
mov eax, dword [esp + 0x54]
mov ecx, dword [esp + 0x20]
push ebx
push eax
push ecx
call fcn.004bede0
fstp qword [edi + 0x10]
add esp, 0xc
mov dword [edi + 0xc], 0x52b480
jmp case.default.0x4be48f
push str.TclParseNumber:_state_INITIAL_cant_happen_here
call fcn.0047c670
add esp, 4
jmp case.default.0x4be48f