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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x616c80
sub esp, 0x74
mov eax, dword [esp + 0x78]
mov ecx, dword [eax]
mov dword [esp + 0x64], ecx
mov edx, dword [eax + 4]
mov dword [esp + 0x24], edx
mov ebx, dword [eax + 8]
mov dword [esp], ecx
mov dword [esp + 4], edx
mov dword [esp + 8], ebx
call fcn.00616c90
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov byte [esp + 0x1b], 1
test eax, eax
jne 0x615b6d
mov edx, dword [esp + 0x78]
mov ebx, dword [esp + 0x24]
xor esi, esi
mov ebp, dword [esp + 0x64]
xor edi, edi
xor edx, edx
mov dword [esp + 0x2c], edx
mov edx, dword [esp + 0x78]
jmp 0x61621e
xor edx, edx
mov ebx, dword [esp + 0x78]
mov ebp, dword [esp + 0x24]
xor esi, esi
mov edi, dword [esp + 0x64]
xor ebx, ebx
mov dword [esp + 0x20], ebx
mov ebx, dword [esp + 0x78]
mov dword [esp + 0x24], ebp
mov dword [esp + 0x70], ebx
mov ebx, dword [0x1e70dec]
mov ebp, dword [0x1e70de8]
cmp edx, ebx
jae 0x616c76
mov dword [esp + 0x64], edi
movzx ebx, byte [ebp + edx]
mov ebp, dword [0x1e70dcc]
mov edi, dword [0x1e70dc8]
cmp ebp, ebx
jbe 0x616c6d
mov dword [esp + 0x2c], edx
mov dword [esp + 0x6c], edi
movzx edx, byte [ebx + edi]
inc ebx
test edx, edx
jbe 0x615bf0
cmp ebx, ebp
jae 0x616c64
add edi, ebx
cmp byte [edi], 1
jne 0x615be4
mov esi, dword [esp + 0x20]
dec edx
inc ebx
mov edi, dword [esp + 0x20]
mov edi, dword [esp + 0x6c]
jmp 0x615bcd
mov edx, dword [0x1e70e1c]
mov ebx, dword [0x1e70e18]
mov ebp, dword [esp + 0x2c]
cmp ebp, edx
jae 0x616c5b
lea edx, [ebx + ebp*2]
movsx edx, word [edx]
mov ebx, dword [0x1e70dfc]
mov edi, dword [0x1e70df8]
cmp ebp, ebx
jae 0x616c52
mov dword [esp + 0x1c], esi
lea ebx, [edi + ebp*2]
movsx ebx, word [ebx]
mov edi, dword [0x1e70e3c]
mov esi, dword [0x1e70e38]
cmp ebp, edi
jae 0x616c49
movzx esi, byte [esi + ebp]
test esi, esi
je 0x615c64
mov dword [esp + 0x60], ebx
mov dword [esp + 0x5c], edx
mov dword [esp + 0x58], esi
lea edi, [esi + edx]
mov dword [esp + 0x54], edi
lea ebp, [edx + esi - 1]
jmp 0x616bb0
mov esi, dword [0x1e70e2c]
mov edi, dword [0x1e70e28]
cmp ebp, esi
jae 0x616ba7
movzx ebp, byte [edi + ebp]
test ebp, ebp
je 0x615c99
mov dword [esp + 0x58], ebp
mov dword [esp + 0x38], ebx
mov dword [esp + 0x48], edx
lea esi, [edx + ebp*2 - 2]
mov edi, dword [esp + 0x20]
jmp 0x616ae9
mov edx, dword [0x1e70e0c]
mov ebp, dword [0x1e70e08]
cmp ebx, edx
jae 0x616ae0
movzx edx, byte [ebp + ebx]
mov ebx, dword [esp + 0x70]
mov ebp, dword [esp + 0x24]
mov esi, dword [esp + 0x1c]
mov edi, dword [esp + 0x64]
mov dword [esp + 0x64], edi
mov dword [esp + 0x70], ebx
mov ebx, dword [0x1e70e7c]
mov edi, dword [0x1e70e78]
cmp edx, ebx
jae 0x616ad7
mov dword [esp + 0x24], ebp
movzx ebx, byte [edi + edx]
mov edi, dword [0x1e70e5c]
mov ebp, dword [0x1e70e58]
cmp edx, edi
jae 0x616ace
mov dword [esp + 0x58], ebx
movzx edx, byte [ebp + edx]
test dl, dl
jne 0x615d14
mov edi, dword [esp + 0x24]
mov edx, dword [esp + 0x20]
jmp 0x61618e
movzx edx, dl
mov ebp, dword [0x1e70dcc]
mov edi, dword [0x1e70dc8]
cmp ebp, edx
jbe 0x616ac5
mov dword [esp + 0x68], ecx
mov dword [esp + 0x28], eax
mov dword [esp + 0x50], esi
movzx ebp, byte [edi + edx]
inc edx
mov edi, dword [esp + 0x24]
test ebp, ebp
jbe 0x61618a
mov dword [esp + 0x3c], ebp
mov ebx, dword [0x1e70dcc]
mov ebp, dword [0x1e70dc8]
cmp edx, ebx
jae 0x616abc
mov dword [esp + 0x4c], edx
movzx ebx, byte [edx + ebp]
cmp bl, 0xa
ja 0x615f72
cmp bl, 5
ja 0x615e5e
cmp bl, 3
ja 0x615df3
cmp bl, 2
jne 0x615db7
cmp esi, eax
jae 0x616ab3
mov ebx, dword [esp + 0x20]
lea ebp, [ebx + 1]
shl esi, 5
mov esi, dword [ecx + esi + 4]
cmp eax, ebp
jle 0x615db0
jbe 0x616aaa
shl ebp, 5
mov ebp, dword [ecx + ebp + 4]
jmp 0x616a54
mov ebp, edi
jmp 0x616a54
cmp bl, 3
jne 0x616181
cmp esi, eax
jae 0x616a4b
mov ebx, dword [esp + 0x20]
lea ebp, [ebx + 1]
shl esi, 5
mov esi, dword [ecx + esi + 4]
cmp eax, ebp
jle 0x615dec
jbe 0x616a42
shl ebp, 5
mov ebp, dword [ecx + ebp + 4]
jmp 0x6169e9
mov ebp, edi
jmp 0x6169e9
cmp bl, 4
jne 0x615e2b
cmp esi, eax
jae 0x6169e0
mov ebx, dword [esp + 0x20]
lea ebp, [ebx + 1]
shl esi, 5
mov esi, dword [ecx + esi + 4]
cmp eax, ebp
jle 0x615e24
jbe 0x6169d7
shl ebp, 5
mov ebp, dword [ecx + ebp + 4]
jmp 0x61697e
mov ebp, edi
jmp 0x61697e
cmp esi, eax
jae 0x616975
mov ebx, dword [esp + 0x20]
lea ebp, [ebx + 1]
shl esi, 5
mov esi, dword [ecx + esi + 4]
cmp eax, ebp
jle 0x615e57
jbe 0x61696c
shl ebp, 5
mov ebp, dword [ecx + ebp + 4]
jmp 0x616913
mov ebp, edi
jmp 0x616913
cmp bl, 7
ja 0x615ece
cmp bl, 6
jne 0x615e9b
cmp esi, eax
jae 0x61690a
mov ebx, dword [esp + 0x20]
lea ebp, [ebx + 1]
shl esi, 5
mov esi, dword [ecx + esi + 4]
cmp eax, ebp
jle 0x615e94
jbe 0x616901
shl ebp, 5
mov ebp, dword [ecx + ebp + 4]
jmp 0x6168a8
mov ebp, edi
jmp 0x6168a8
cmp esi, eax
jae 0x61689f
mov ebx, dword [esp + 0x20]
lea ebp, [ebx + 1]
shl esi, 5
mov esi, dword [ecx + esi + 4]
cmp eax, ebp
jle 0x615ec7
jbe 0x616896
shl ebp, 5
mov ebp, dword [ecx + ebp + 4]
jmp 0x61683d
mov ebp, edi
jmp 0x61683d
cmp bl, 8
jne 0x615f06
cmp esi, eax
jae 0x616834
mov ebx, dword [esp + 0x20]
lea ebp, [ebx + 1]
shl esi, 5
mov esi, dword [ecx + esi + 4]
cmp eax, ebp
jle 0x615eff
jbe 0x61682b
shl ebp, 5
mov ebp, dword [ecx + ebp + 4]
jmp 0x6167d2
mov ebp, edi
jmp 0x6167d2
cmp bl, 9
jne 0x615f3f
nop
cmp esi, eax
jae 0x6167c9
mov ebx, dword [esp + 0x20]
lea ebp, [ebx + 1]
shl esi, 5
mov esi, dword [ecx + esi + 4]
cmp eax, ebp
jle 0x615f38
jbe 0x6167c0
shl ebp, 5
mov ebp, dword [ecx + ebp + 4]
jmp 0x61675f
mov ebp, edi
jmp 0x61675f
cmp esi, eax
jae 0x616756
mov ebx, dword [esp + 0x20]
lea ebp, [ebx + 1]
shl esi, 5
mov esi, dword [ecx + esi + 4]
cmp eax, ebp
jle 0x615f6b
jbe 0x61674d
shl ebp, 5
mov ebp, dword [ecx + ebp + 4]
jmp 0x6166f4
mov ebp, edi
jmp 0x6166f4
cmp bl, 0xe
ja 0x61605e
cmp bl, 0xc
ja 0x615fef
cmp bl, 0xb
jne 0x615fba
cmp esi, eax
jae 0x6166eb
mov ebx, esi
shl esi, 5
mov ebp, dword [ecx + esi + 4]
mov esi, dword [esp + 0x20]
cmp esi, eax
jge 0x61667c
jae 0x6166e2
shl esi, 5
mov esi, dword [ecx + esi + 4]
mov edi, esi
mov esi, dword [esp + 0x20]
jmp 0x61667c
cmp esi, eax
jae 0x616673
mov ebx, esi
shl esi, 5
mov ebp, dword [ecx + esi + 4]
mov esi, dword [esp + 0x20]
cmp esi, eax
jge 0x616601
jae 0x61666a
shl esi, 5
mov esi, dword [ecx + esi + 4]
mov edi, esi
mov esi, dword [esp + 0x20]
jmp 0x616601
cmp bl, 0xd
jne 0x616029
cmp esi, eax
jae 0x6165f8
mov ebx, esi
shl esi, 5
mov ebp, dword [ecx + esi + 4]
mov esi, dword [esp + 0x20]
cmp esi, eax
jge 0x616586
jae 0x6165ef
shl esi, 5
mov esi, dword [ecx + esi + 4]
mov edi, esi
mov esi, dword [esp + 0x20]
jmp 0x616586
cmp esi, eax
jae 0x61657d
mov ebx, esi
shl esi, 5
mov ebp, dword [ecx + esi + 4]
mov esi, dword [esp + 0x20]
cmp esi, eax
jge 0x61650b
jae 0x616574
shl esi, 5
mov esi, dword [ecx + esi + 4]
mov edi, esi
mov esi, dword [esp + 0x20]
jmp 0x61650b
cmp bl, 0x10
ja 0x6160d2
cmp bl, 0xf
jne 0x61609d
cmp esi, eax
jae 0x616502
mov ebx, esi
shl esi, 5
mov ebp, dword [ecx + esi + 4]
mov esi, dword [esp + 0x20]
cmp esi, eax
jge 0x616490
jae 0x6164f9
shl esi, 5
mov esi, dword [ecx + esi + 4]
mov edi, esi
mov esi, dword [esp + 0x20]
jmp 0x616490
cmp esi, eax
jae 0x616487
mov ebx, esi
shl esi, 5
mov ebp, dword [ecx + esi + 4]
mov esi, dword [esp + 0x20]
cmp esi, eax
jge 0x616415
jae 0x61647e
shl esi, 5
mov esi, dword [ecx + esi + 4]
mov edi, esi
mov esi, dword [esp + 0x20]
jmp 0x616415
cmp bl, 0x11
jne 0x61610c
cmp esi, eax
jae 0x61640c
mov ebx, esi
shl esi, 5
mov ebp, dword [ecx + esi + 4]
mov esi, dword [esp + 0x20]
cmp esi, eax
jge 0x61639a
jae 0x616403
shl esi, 5
mov esi, dword [ecx + esi + 4]
mov edi, esi
mov esi, dword [esp + 0x20]
jmp 0x61639a
cmp bl, 0x12
jne 0x616147
nop
cmp esi, eax
jae 0x616391
mov ebx, esi
shl esi, 5
mov ebp, dword [ecx + esi + 4]
mov esi, dword [esp + 0x20]
cmp esi, eax
jge 0x616317
jae 0x616388
shl esi, 5
mov esi, dword [ecx + esi + 4]
mov edi, esi
mov esi, dword [esp + 0x20]
jmp 0x616317
cmp bl, 0x13
jne 0x616181
cmp esi, eax
jae 0x61630e
mov ebx, esi
shl esi, 5
mov ebp, dword [ecx + esi + 4]
mov esi, dword [esp + 0x20]
cmp esi, eax
jge 0x61629f
jae 0x616305
shl esi, 5
mov esi, dword [ecx + esi + 4]
mov edi, esi
mov esi, dword [esp + 0x20]
jmp 0x61629f
mov ebx, dword [esp + 0x20]
jmp 0x61628c
mov edx, dword [esp + 0x20]
mov ebp, dword [0x1e70e4c]
mov edi, dword [0x1e70e48]
cmp ebp, ebx
jbe 0x616283
movzx ebp, byte [edi + ebx]
mov edi, dword [0x1e70dcc]
mov ebx, dword [0x1e70dc8]
cmp edi, ebp
jbe 0x61627a
mov dword [esp + 0x6c], ebx
mov dword [esp + 0x20], edx
movzx edx, byte [ebx + ebp]
inc ebp
test edx, edx
jbe 0x6161e6
cmp ebp, edi
jae 0x616271
movzx ebx, byte [ebp + ebx]
test bl, bl
jne 0x6161de
xor esi, esi
dec edx
inc ebp
mov ebx, dword [esp + 0x6c]
jmp 0x6161c7
mov edx, dword [esp + 0x20]
inc edx
cmp eax, edx
je 0x616208
mov ebx, dword [esp + 0x70]
mov ebp, dword [esp + 0x24]
mov edi, dword [esp + 0x64]
mov dword [esp + 0x20], edx
mov edx, dword [esp + 0x58]
jmp 0x615b87
mov ebx, dword [esp + 0x24]
mov ebp, dword [esp + 0x64]
mov edi, edx
mov edx, dword [esp + 0x58]
mov dword [esp + 0x2c], edx
mov edx, dword [esp + 0x70]
cmp eax, edi
jne 0x616264
mov dword [esp + 0x24], ebx
mov dword [esp + 0x64], ebp
mov dword [esp + 0x70], edx
mov edx, dword [0x1e70ddc]
mov ebx, dword [0x1e70dd8]
mov ebp, dword [esp + 0x2c]
cmp ebp, edx
jae 0x616268
movzx edx, word [ebx + ebp*2]
test dx, dx
jle 0x616264
dec edx
movsx edx, dx
mov ebx, dword [esp + 0x70]
mov ebp, dword [esp + 0x24]
mov dword [esp + 0x20], edi
mov edi, dword [esp + 0x64]
jmp 0x615cc2
add esp, 0x74
ret
mov eax, ebp
mov ecx, edx
call fcn.00465e00
mov eax, ebp
mov ecx, edi
call fcn.00465e00
mov eax, ebp
mov ecx, edi
call fcn.00465e00
mov eax, ebx
mov ecx, ebp
call fcn.00465e00
mov ebp, dword [esp + 0x3c]
dec ebp
inc edx
mov dword [esp + 0x20], ebx
mov ebx, dword [esp + 0x58]
jmp 0x615d40
cmp edi, ebp
jle 0x6162d7
movzx ebx, byte [esp + 0x1b]
mov edx, dword [esp + 0x24]
cmp ebp, edx
jae 0x6162fc
lea ecx, [ebp + ebp*2]
mov eax, dword [esp + 0x64]
lea ecx, [eax + ecx*8 + 0x13]
shl ebx, 4
or ebx, 8
mov byte [ecx], bl
inc ebp
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0x4c]
mov ebx, dword [esp + 0x50]
jmp 0x61629f
movzx ebp, byte [esp + 0x1b]
inc ebp
xchg ebp, eax
mov byte [esp + 0x1b], al
xchg ebp, eax
xchg ebp, eax
cmp al, 0x10
xchg ebp, eax
jne 0x6162ef
mov byte [esp + 0x1b], 1
lea ebp, [esi - 1]
mov esi, ebx
mov edi, dword [esp + 0x24]
mov ebx, ebp
jmp 0x61628c
mov eax, ebp
mov ecx, edx
call fcn.00465e00
mov ecx, eax
mov eax, esi
call fcn.00465e00
mov ecx, eax
mov eax, esi
call fcn.00465e00
cmp edi, ebp
jle 0x61634f
movzx ebx, byte [esp + 0x1b]
mov edx, dword [esp + 0x24]
cmp ebp, edx
jae 0x61637f
lea ecx, [ebp + ebp*2]
mov eax, dword [esp + 0x64]
lea ecx, [eax + ecx*8 + 0x13]
shl ebx, 4
or ebx, 7
mov byte [ecx], bl
inc ebp
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0x4c]
mov ebx, dword [esp + 0x50]
jmp 0x616317
movzx ebp, byte [esp + 0x1b]
inc ebp
xchg ebp, eax
mov byte [esp + 0x1b], al
xchg ebp, eax
xchg ebp, eax
cmp al, 0x10
xchg ebp, eax
jne 0x616367
mov byte [esp + 0x1b], 1
mov ebp, dword [esp + 0x70]
or dword [ebp + 0x68], 0x40
lea ebp, [esi - 1]
mov esi, ebx
mov edi, dword [esp + 0x24]
mov ebx, ebp
jmp 0x61628c
mov eax, ebp
mov ecx, edx
call fcn.00465e00
mov ecx, eax
mov eax, esi
call fcn.00465e00
mov ecx, eax
mov eax, esi
call fcn.00465e00
cmp edi, ebp
jle 0x6163d2
movzx ebx, byte [esp + 0x1b]
mov edx, dword [esp + 0x24]
cmp ebp, edx
jae 0x6163fa
lea ecx, [ebp + ebp*2]
mov eax, dword [esp + 0x64]
lea ecx, [eax + ecx*8 + 0x13]
shl ebx, 4
or ebx, 6
mov byte [ecx], bl
inc ebp
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0x4c]
mov ebx, dword [esp + 0x50]
jmp 0x61639a
movzx ebp, byte [esp + 0x1b]
inc ebp
xchg ebp, eax
mov byte [esp + 0x1b], al
xchg ebp, eax
xchg ebp, eax
cmp al, 0x10
xchg ebp, eax
jne 0x6163ea
mov byte [esp + 0x1b], 1
lea ebp, [esi - 1]
mov esi, ebx
mov edi, dword [esp + 0x24]
mov ebx, ebp
jmp 0x61628c
mov eax, ebp
mov ecx, edx
call fcn.00465e00
mov ecx, eax
mov eax, esi
call fcn.00465e00
mov ecx, eax
mov eax, esi
call fcn.00465e00
cmp edi, ebp
jle 0x61644d
movzx ebx, byte [esp + 0x1b]
mov edx, dword [esp + 0x24]
cmp ebp, edx
jae 0x616475
lea ecx, [ebp + ebp*2]
mov eax, dword [esp + 0x64]
lea ecx, [eax + ecx*8 + 0x13]
shl ebx, 4
or ebx, 5
mov byte [ecx], bl
inc ebp
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0x4c]
mov ebx, dword [esp + 0x50]
jmp 0x616415
movzx ebp, byte [esp + 0x1b]
inc ebp
xchg ebp, eax
mov byte [esp + 0x1b], al
xchg ebp, eax
xchg ebp, eax
cmp al, 0x10
xchg ebp, eax
jne 0x616465
mov byte [esp + 0x1b], 1
lea ebp, [esi - 1]
mov esi, ebx
mov edi, dword [esp + 0x24]
mov ebx, ebp
jmp 0x61628c
mov eax, ebp
mov ecx, edx
call fcn.00465e00
mov ecx, eax
mov eax, esi
call fcn.00465e00
mov ecx, eax
mov eax, esi
call fcn.00465e00
cmp edi, ebp
jle 0x6164c8
movzx ebx, byte [esp + 0x1b]
mov edx, dword [esp + 0x24]
cmp ebp, edx
jae 0x6164f0
lea ecx, [ebp + ebp*2]
mov eax, dword [esp + 0x64]
lea ecx, [eax + ecx*8 + 0x13]
shl ebx, 4
or ebx, 4
mov byte [ecx], bl
inc ebp
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0x4c]
mov ebx, dword [esp + 0x50]
jmp 0x616490
movzx ebp, byte [esp + 0x1b]
inc ebp
xchg ebp, eax
mov byte [esp + 0x1b], al
xchg ebp, eax
xchg ebp, eax
cmp al, 0x10
xchg ebp, eax
jne 0x6164e0
mov byte [esp + 0x1b], 1
lea ebp, [esi - 1]
mov esi, ebx
mov edi, dword [esp + 0x24]
mov ebx, ebp
jmp 0x61628c
mov eax, ebp
mov ecx, edx
call fcn.00465e00
mov ecx, eax
mov eax, esi
call fcn.00465e00
mov ecx, eax
mov eax, esi
call fcn.00465e00
cmp edi, ebp
jle 0x616543
movzx ebx, byte [esp + 0x1b]
mov edx, dword [esp + 0x24]
cmp ebp, edx
jae 0x61656b
lea ecx, [ebp + ebp*2]
mov eax, dword [esp + 0x64]
lea ecx, [eax + ecx*8 + 0x13]
shl ebx, 4
or ebx, 3
mov byte [ecx], bl
inc ebp
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0x4c]
mov ebx, dword [esp + 0x50]
jmp 0x61650b
movzx ebp, byte [esp + 0x1b]
inc ebp
xchg ebp, eax
mov byte [esp + 0x1b], al
xchg ebp, eax
xchg ebp, eax
cmp al, 0x10
xchg ebp, eax
jne 0x61655b
mov byte [esp + 0x1b], 1
lea ebp, [esi - 1]
mov esi, ebx
mov edi, dword [esp + 0x24]
mov ebx, ebp
jmp 0x61628c
mov eax, ebp
mov ecx, edx
call fcn.00465e00
mov ecx, eax
mov eax, esi
call fcn.00465e00
mov ecx, eax
mov eax, esi
call fcn.00465e00
cmp edi, ebp
jle 0x6165be
movzx ebx, byte [esp + 0x1b]
mov edx, dword [esp + 0x24]
cmp ebp, edx
jae 0x6165e6
lea ecx, [ebp + ebp*2]
mov eax, dword [esp + 0x64]
lea ecx, [eax + ecx*8 + 0x13]
shl ebx, 4
or ebx, 2
mov byte [ecx], bl
inc ebp
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0x4c]
mov ebx, dword [esp + 0x50]
jmp 0x616586
movzx ebp, byte [esp + 0x1b]
inc ebp
xchg ebp, eax
mov byte [esp + 0x1b], al
xchg ebp, eax
xchg ebp, eax
cmp al, 0x10
xchg ebp, eax
jne 0x6165d6
mov byte [esp + 0x1b], 1
lea ebp, [esi - 1]
mov esi, ebx
mov edi, dword [esp + 0x24]
mov ebx, ebp
jmp 0x61628c
mov eax, ebp
mov ecx, edx
call fcn.00465e00
mov ecx, eax
mov eax, esi
call fcn.00465e00
mov ecx, eax
mov eax, esi
call fcn.00465e00
cmp edi, ebp
jle 0x616639
movzx ebx, byte [esp + 0x1b]
mov edx, dword [esp + 0x24]
cmp ebp, edx
jae 0x616661
lea ecx, [ebp + ebp*2]
mov eax, dword [esp + 0x64]
lea ecx, [eax + ecx*8 + 0x13]
shl ebx, 4
or ebx, 1
mov byte [ecx], bl
inc ebp
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0x4c]
mov ebx, dword [esp + 0x50]
jmp 0x616601
movzx ebp, byte [esp + 0x1b]
inc ebp
xchg ebp, eax
mov byte [esp + 0x1b], al
xchg ebp, eax
xchg ebp, eax
cmp al, 0x10
xchg ebp, eax
jne 0x616651
mov byte [esp + 0x1b], 1
lea ebp, [esi - 1]
mov esi, ebx
mov edi, dword [esp + 0x24]
mov ebx, ebp
jmp 0x61628c
mov eax, ebp
mov ecx, edx
call fcn.00465e00
mov ecx, eax
mov eax, esi
call fcn.00465e00
mov ecx, eax
mov eax, esi
call fcn.00465e00
cmp edi, ebp
jle 0x6166b1
movzx ebx, byte [esp + 0x1b]
mov edx, dword [esp + 0x24]
cmp ebp, edx
jae 0x6166d9
lea ecx, [ebp + ebp*2]
mov eax, dword [esp + 0x64]
lea ecx, [eax + ecx*8 + 0x13]
shl ebx, 4
mov byte [ecx], bl
inc ebp
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0x4c]
mov ebx, dword [esp + 0x50]
jmp 0x61667c
movzx ebp, byte [esp + 0x1b]
inc ebp
xchg ebp, eax
mov byte [esp + 0x1b], al
xchg ebp, eax
xchg ebp, eax
cmp al, 0x10
xchg ebp, eax
jne 0x6166c9
mov byte [esp + 0x1b], 1
lea ebp, [esi - 1]
mov esi, ebx
mov edi, dword [esp + 0x24]
mov ebx, ebp
jmp 0x61628c
mov eax, ebp
mov ecx, edx
call fcn.00465e00
mov ecx, eax
mov eax, esi
call fcn.00465e00
mov ecx, eax
mov eax, esi
call fcn.00465e00
cmp ebp, esi
jle 0x616723
movzx edx, byte [esp + 0x1b]
cmp esi, edi
jae 0x616744
lea ecx, [esi + esi*2]
mov eax, dword [esp + 0x64]
lea ecx, [eax + ecx*8 + 0x13]
shl edx, 4
or edx, 8
mov byte [ecx], dl
inc esi
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0x4c]
jmp 0x6166f4
movzx ebp, byte [esp + 0x1b]
inc ebp
xchg ebp, eax
mov byte [esp + 0x1b], al
xchg ebp, eax
xchg ebp, eax
cmp al, 0x10
xchg ebp, eax
jne 0x61673b
mov byte [esp + 0x1b], 1
mov esi, dword [esp + 0x50]
jmp 0x61628c
mov eax, esi
mov ecx, edi
call fcn.00465e00
mov ecx, eax
mov eax, ebp
call fcn.00465e00
mov ecx, eax
mov eax, esi
call fcn.00465e00
cmp ebp, esi
jle 0x61678e
movzx edx, byte [esp + 0x1b]
cmp esi, edi
jae 0x6167b7
lea ecx, [esi + esi*2]
mov eax, dword [esp + 0x64]
lea ecx, [eax + ecx*8 + 0x13]
shl edx, 4
or edx, 7
mov byte [ecx], dl
inc esi
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0x4c]
jmp 0x61675f
movzx ebp, byte [esp + 0x1b]
inc ebp
xchg ebp, eax
mov byte [esp + 0x1b], al
xchg ebp, eax
xchg ebp, eax
cmp al, 0x10
xchg ebp, eax
jne 0x6167a6
mov byte [esp + 0x1b], 1
mov ebp, dword [esp + 0x70]
or dword [ebp + 0x68], 0x40
mov esi, dword [esp + 0x50]
jmp 0x61628c
mov eax, esi
mov ecx, edi
call fcn.00465e00
mov ecx, eax
mov eax, ebp
call fcn.00465e00
mov ecx, eax
mov eax, esi
call fcn.00465e00
cmp ebp, esi
jle 0x616801
movzx edx, byte [esp + 0x1b]
cmp esi, edi
jae 0x616822
lea ecx, [esi + esi*2]
mov eax, dword [esp + 0x64]
lea ecx, [eax + ecx*8 + 0x13]
shl edx, 4
or edx, 6
mov byte [ecx], dl
inc esi
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0x4c]
jmp 0x6167d2
movzx ebp, byte [esp + 0x1b]
inc ebp
xchg ebp, eax
mov byte [esp + 0x1b], al
xchg ebp, eax
xchg ebp, eax
cmp al, 0x10
xchg ebp, eax
jne 0x616819
mov byte [esp + 0x1b], 1
mov esi, dword [esp + 0x50]
jmp 0x61628c
mov eax, esi
mov ecx, edi
call fcn.00465e00
mov ecx, eax
mov eax, ebp
call fcn.00465e00
mov ecx, eax
mov eax, esi
call fcn.00465e00
cmp ebp, esi
jle 0x61686c
movzx edx, byte [esp + 0x1b]
cmp esi, edi
jae 0x61688d
lea ecx, [esi + esi*2]
mov eax, dword [esp + 0x64]
lea ecx, [eax + ecx*8 + 0x13]
shl edx, 4
or edx, 5
mov byte [ecx], dl
inc esi
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0x4c]
jmp 0x61683d
movzx ebp, byte [esp + 0x1b]
inc ebp
xchg ebp, eax
mov byte [esp + 0x1b], al
xchg ebp, eax
xchg ebp, eax
cmp al, 0x10
xchg ebp, eax
jne 0x616884
mov byte [esp + 0x1b], 1
mov esi, dword [esp + 0x50]
jmp 0x61628c
mov eax, esi
mov ecx, edi
call fcn.00465e00
mov ecx, eax
mov eax, ebp
call fcn.00465e00
mov ecx, eax
mov eax, esi
call fcn.00465e00
cmp ebp, esi
jle 0x6168d7
movzx edx, byte [esp + 0x1b]
cmp esi, edi
jae 0x6168f8
lea ecx, [esi + esi*2]
mov eax, dword [esp + 0x64]
lea ecx, [eax + ecx*8 + 0x13]
shl edx, 4
or edx, 4
mov byte [ecx], dl
inc esi
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0x4c]
jmp 0x6168a8
movzx ebp, byte [esp + 0x1b]
inc ebp
xchg ebp, eax
mov byte [esp + 0x1b], al
xchg ebp, eax
xchg ebp, eax
cmp al, 0x10
xchg ebp, eax
jne 0x6168ef
mov byte [esp + 0x1b], 1
mov esi, dword [esp + 0x50]
jmp 0x61628c
mov eax, esi
mov ecx, edi
call fcn.00465e00
mov ecx, eax
mov eax, ebp
call fcn.00465e00
mov ecx, eax
mov eax, esi
call fcn.00465e00
cmp ebp, esi
jle 0x616942
movzx edx, byte [esp + 0x1b]
cmp esi, edi
jae 0x616963
lea ecx, [esi + esi*2]
mov eax, dword [esp + 0x64]
lea ecx, [eax + ecx*8 + 0x13]
shl edx, 4
or edx, 3
mov byte [ecx], dl
inc esi
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0x4c]
jmp 0x616913
movzx ebp, byte [esp + 0x1b]
inc ebp
xchg ebp, eax
mov byte [esp + 0x1b], al
xchg ebp, eax
xchg ebp, eax
cmp al, 0x10
xchg ebp, eax
jne 0x61695a
mov byte [esp + 0x1b], 1
mov esi, dword [esp + 0x50]
jmp 0x61628c
mov eax, esi
mov ecx, edi
call fcn.00465e00
mov ecx, eax
mov eax, ebp
call fcn.00465e00
mov ecx, eax
mov eax, esi
call fcn.00465e00
cmp ebp, esi
jle 0x6169ad
movzx edx, byte [esp + 0x1b]
cmp esi, edi
jae 0x6169ce
lea ecx, [esi + esi*2]
mov eax, dword [esp + 0x64]
lea ecx, [eax + ecx*8 + 0x13]
shl edx, 4
or edx, 2
mov byte [ecx], dl
inc esi
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0x4c]
jmp 0x61697e
movzx ebp, byte [esp + 0x1b]
inc ebp
xchg ebp, eax
mov byte [esp + 0x1b], al
xchg ebp, eax
xchg ebp, eax
cmp al, 0x10
xchg ebp, eax
jne 0x6169c5
mov byte [esp + 0x1b], 1
mov esi, dword [esp + 0x50]
jmp 0x61628c
mov eax, esi
mov ecx, edi
call fcn.00465e00
mov ecx, eax
mov eax, ebp
call fcn.00465e00
mov ecx, eax
mov eax, esi
call fcn.00465e00
cmp ebp, esi
jle 0x616a18
movzx edx, byte [esp + 0x1b]
cmp esi, edi
jae 0x616a39
lea ecx, [esi + esi*2]
mov eax, dword [esp + 0x64]
lea ecx, [eax + ecx*8 + 0x13]
shl edx, 4
or edx, 1
mov byte [ecx], dl
inc esi
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0x4c]
jmp 0x6169e9
movzx ebp, byte [esp + 0x1b]
inc ebp
xchg ebp, eax
mov byte [esp + 0x1b], al
xchg ebp, eax
xchg ebp, eax
cmp al, 0x10
xchg ebp, eax
jne 0x616a30
mov byte [esp + 0x1b], 1
mov esi, dword [esp + 0x50]
jmp 0x61628c
mov eax, esi
mov ecx, edi
call fcn.00465e00
mov ecx, eax
mov eax, ebp
call fcn.00465e00
mov ecx, eax
mov eax, esi
call fcn.00465e00
cmp ebp, esi
jle 0x616a80
movzx edx, byte [esp + 0x1b]
cmp esi, edi
jae 0x616aa1
lea ecx, [esi + esi*2]
mov eax, dword [esp + 0x64]
lea ecx, [eax + ecx*8 + 0x13]
shl edx, 4
mov byte [ecx], dl
inc esi
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0x4c]
jmp 0x616a54
movzx ebp, byte [esp + 0x1b]
inc ebp
xchg ebp, eax
mov byte [esp + 0x1b], al
xchg ebp, eax
xchg ebp, eax
cmp al, 0x10
xchg ebp, eax
jne 0x616a98
mov byte [esp + 0x1b], 1
mov esi, dword [esp + 0x50]
jmp 0x61628c
mov eax, esi
mov ecx, edi
call fcn.00465e00
mov ecx, eax
mov eax, ebp
call fcn.00465e00
mov ecx, eax
mov eax, esi
call fcn.00465e00
mov eax, edx
mov ecx, ebx
call fcn.00465e00
mov eax, edx
mov ecx, ebp
call fcn.00465e00
mov eax, edx
mov ecx, edi
call fcn.00465e00
mov eax, edx
mov ecx, ebx
call fcn.00465e00
mov eax, ebx
mov ecx, edx
call fcn.00465e00
cmp esi, edx
jl 0x616b85
mov dword [esp + 0x30], esi
sub esi, edx
sar esi, 1
and esi, 0xfffffffe
lea ebp, [esi + edx]
cmp edi, eax
jae 0x616b9e
mov dword [esp + 0x40], edx
shl edi, 5
movzx edi, byte [ecx + edi + 0x1e]
mov ebx, dword [0x1e70e6c]
mov edx, dword [0x1e70e68]
cmp ebx, ebp
jbe 0x616b95
mov dword [esp + 0x6c], edx
add edx, ebp
xchg edi, eax
cmp byte [edx], al
xchg edi, eax
jbe 0x616b39
mov edx, dword [esp + 0x40]
lea esi, [esi + edx - 2]
jmp 0x616b5f
mov edx, dword [esp + 0x40]
lea edx, [edx + esi + 1]
cmp ebx, edx
jbe 0x616b8c
mov edx, dword [esp + 0x6c]
lea edx, [ebp + edx + 1]
xchg edi, eax
cmp byte [edx], al
xchg edi, eax
jae 0x616b70
mov ebx, dword [esp + 0x40]
lea edx, [esi + ebx + 2]
mov esi, dword [esp + 0x30]
mov edi, dword [esp + 0x20]
mov ebx, dword [esp + 0x38]
mov ebp, dword [esp + 0x58]
jmp 0x616ae9
mov edx, dword [esp + 0x48]
sub ebp, edx
sar ebp, 1
mov edx, dword [esp + 0x38]
lea ebx, [ebp + edx]
jmp 0x615c99
add ebx, ebp
jmp 0x615c99
mov eax, edx
mov ecx, ebx
call fcn.00465e00
mov eax, ebp
mov ecx, ebx
call fcn.00465e00
mov ecx, eax
mov eax, edi
call fcn.00465e00
mov eax, ebp
mov ecx, esi
call fcn.00465e00
cmp ebp, edx
jl 0x616c2a
mov dword [esp + 0x34], ebp
sub ebp, edx
sar ebp, 1
lea edi, [ebp + edx]
mov esi, dword [esp + 0x20]
cmp esi, eax
jae 0x616c40
mov dword [esp + 0x44], edx
shl esi, 5
movzx esi, byte [ecx + esi + 0x1e]
mov ebx, dword [0x1e70e6c]
mov edx, dword [0x1e70e68]
cmp ebx, edi
jbe 0x616c37
movzx edx, byte [edi + edx]
xchg esi, eax
cmp dl, al
xchg esi, eax
jbe 0x616bf8
mov edx, dword [esp + 0x44]
lea ebp, [edx + ebp - 1]
jmp 0x616c06
jae 0x616c18
mov ebx, dword [esp + 0x44]
lea edx, [ebx + ebp + 1]
mov ebp, dword [esp + 0x34]
mov ebx, dword [esp + 0x20]
mov ebx, dword [esp + 0x60]
mov esi, dword [esp + 0x58]
mov edi, dword [esp + 0x54]
jmp 0x616bb0
mov edx, dword [esp + 0x5c]
sub edi, edx
mov edx, dword [esp + 0x60]
lea ebx, [edi + edx]
jmp 0x615c99
add ebx, esi
mov ebp, dword [esp + 0x2c]
mov edx, edi
jmp 0x615c64
mov eax, edi
mov ecx, ebx
call fcn.00465e00
mov ecx, eax
mov eax, esi
call fcn.00465e00
mov eax, ebp
mov ecx, edi
call fcn.00465e00
mov eax, ebp
mov ecx, ebx
call fcn.00465e00
mov eax, ebp
mov ecx, edx
call fcn.00465e00
mov eax, ebx
mov ecx, ebp
call fcn.00465e00
mov eax, ebx
mov ecx, ebp
call fcn.00465e00
mov eax, edx
mov ecx, ebx
call fcn.00465e00
nop
call fcn.004649b0
jmp fcn.00615b00