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

Disassembly:
push esi
or esi, 0x6f5f
jmp 0x616bc2
jmp 0x616bc9
call fcn.00616bd6
add byte [edi + 0x4e], al
xor esi, dword [ebx]
inc edi
inc ebp
push eax
add esp, 4
pop esi
push ebx
push edi
add esp, 4
jmp 0x616be7
pop ebx
lea ecx, [ebp - 0x1628]
mov dword [ebp - 0xc1c], ecx
mov edx, dword [ebp - 0x4d4]
mov eax, dword [edx + 0x30]
mov dword [ebp - 0xc18], eax
xor ecx, ecx
mov word [ebp - 0x1f8], cx
xor edx, edx
mov word [ebp - 0x100], dx
push ecx
and ecx, 0x14aaf
add ecx, 0x4973
xor ecx, 0x1f9
call 0x616c37
add byte [0x423c393d], dh
cmp al, 0x41
inc esp
dec esi
add esp, 4
pop ecx
push edi
push ecx
add esp, 4
sub edi, 0xf1e9
pop edi
mov eax, dword [ebp - 0xc18]
mov cx, word [eax]
mov word [ebp - 0xf7e], cx
mov edx, dword [ebp - 0xc18]
add edx, 2
mov dword [ebp - 0xc18], edx
mov ax, word [ebp - 0xf7e]
mov word [ebp - 0x1f8], ax
mov ecx, dword [ebp - 0xc1c]
mov dx, word [ecx]
mov word [ebp - 0xf80], dx
mov eax, dword [ebp - 0xc1c]
add eax, 2
mov dword [ebp - 0xc1c], eax
mov cx, word [ebp - 0xf80]
mov word [ebp - 0x100], cx
push eax
add eax, 0x146ec
or eax, 0x15f5
pop eax
push edi
push ecx
add esp, 4
jmp 0x616cba
pop edi
push ecx
push ecx
add esp, 4
or ecx, 0x13b91
and ecx, 0x1496f
sub ecx, 0x5728
pop ecx
movzx edx, word [ebp - 0x100]
test edx, edx
jne 0x616cf6
movzx eax, word [ebp - 0x1f8]
movzx ecx, word [ebp - 0x100]
sub eax, ecx
mov dword [ebp - 0x1498], eax
jmp 0x616d59
movzx edx, word [ebp - 0x1f8]
movzx eax, word [ebp - 0x100]
cmp edx, eax
je 0x616c15
movzx ecx, word [ebp - 0x1f8]
xor ecx, 0x20
movzx edx, word [ebp - 0x100]
cmp ecx, edx
je 0x616c15
movzx eax, word [ebp - 0x1f8]
movzx ecx, word [ebp - 0x100]
cmp eax, ecx
jge 0x616d43
mov dword [ebp - 0x14d8], 0xffffffff
jmp 0x616d4d
mov dword [ebp - 0x14d8], 1
mov edx, dword [ebp - 0x14d8]
mov dword [ebp - 0x1498], edx
cmp dword [ebp - 0x1498], 0
jne 0x616da2
push eax
push ebx
add esp, 4
add eax, 0xfc83
add eax, 0x10ed5
and eax, 0xc83c
or eax, 0x6f35
pop eax
push edi
push edx
add esp, 4
sub edi, 0x12018
jmp 0x616d93
pop edi
mov eax, dword [ebp - 0x4d4]
mov dword [ebp - 0x2e0], eax
jmp 0x616e0a
push esi
sub esi, 0x11fda
or esi, 0xf441
sub esi, 0x1f32
pop esi
push esi
push eax
add esp, 4
xor esi, 0x169fb
add esi, 0x11401
jmp 0x616dcd
xor esi, 0x18535
pop esi
mov ecx, dword [ebp - 0x4d4]
mov edx, dword [ecx]
mov dword [ebp - 0x4d4], edx
mov eax, dword [ebp - 0x4d4]
cmp eax, dword [ebp - 0xc20]
je 0x616e00
mov ecx, dword [ebp - 0x4d4]
cmp dword [ecx + 0x30], 0
jne 0x616bb6
mov dword [ebp - 0x2e0], 0
push edx
push edx
add esp, 4
jmp 0x616e15
jmp 0x616e1d
or edx, 0x56ba
add edx, 0x4316
pop edx
push ecx
push ebx
add esp, 4
or ecx, 0x11417
sub ecx, 0x7cd5
pop ecx
cmp dword [ebp - 0x2e0], 0
jne 0x617755
mov edx, 0x6b
mov word [ebp - 0x16cc], dx
mov eax, 0x65
mov word [ebp - 0x16ca], ax
mov ecx, 0x72
mov word [ebp - 0x16c8], cx
mov edx, 0x6e
mov word [ebp - 0x16c6], dx
mov eax, 0x65
mov word [ebp - 0x16c4], ax
mov ecx, 0x6c
mov word [ebp - 0x16c2], cx
mov edx, 0x33
mov word [ebp - 0x16c0], dx
mov eax, 0x32
mov word [ebp - 0x16be], ax
mov ecx, 0x2e
mov word [ebp - 0x16bc], cx
mov edx, 0x64
mov word [ebp - 0x16ba], dx
mov eax, 0x6c
mov word [ebp - 0x16b8], ax
mov ecx, 0x6c
mov word [ebp - 0x16b6], cx
xor edx, edx
mov word [ebp - 0x16b4], dx
push ecx
push ecx
add esp, 4
xor ecx, 0x44e4
add ecx, 0x3d62
add ecx, 0x153d6
pop ecx
push eax
or eax, 0xcef2
and eax, 0x2aed
sub eax, 0xbd5
sub eax, 0x3400
pop eax
mov byte [ebp - 0x820], 0x4c
mov byte [ebp - 0x81f], 0x6f
mov byte [ebp - 0x81e], 0x61
mov byte [ebp - 0x81d], 0x64
mov byte [ebp - 0x81c], 0x4c
mov byte [ebp - 0x81b], 0x69
mov byte [ebp - 0x81a], 0x62
mov byte [ebp - 0x819], 0x72
mov byte [ebp - 0x818], 0x61
mov byte [ebp - 0x817], 0x72
mov byte [ebp - 0x816], 0x79
mov byte [ebp - 0x815], 0x57
mov byte [ebp - 0x814], 0
mov eax, dword fs:[0x18]
mov dword [ebp - 0x1898], eax
mov ecx, dword [ebp - 0x1898]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0x189c], edx
mov eax, dword [ebp - 0x189c]
mov dword [ebp - 0x14dc], eax
push ecx
add ecx, 0x4964
add ecx, 0x182b9
sub ecx, 0x76f1
pop ecx
push edx
call 0x616fb8
add byte [ebp + 0x48], cl
inc esi
aas
cmp bh, byte [eax]
aaa
add esp, 4
and edx, 0x133c1
add edx, 0x2caf
pop edx
cmp dword [ebp - 0x14dc], 0
jne 0x616fe0
mov dword [ebp - 0x6ec], 0
jmp 0x61729c
mov ecx, dword [ebp - 0x14dc]
mov edx, dword [ecx + 0xc]
mov eax, dword [edx + 0xc]
mov dword [ebp - 0xc2c], eax
push edi
push esi
add esp, 4
add edi, 0x17064
and edi, 0xad9
and edi, 0x15514
or edi, 0x812f
pop edi
push edx
add edx, 0x4578
and edx, 0x15a0c
or edx, 0x9967
pop edx
cmp dword [ebp - 0xc2c], 0
jne 0x61703c
mov dword [ebp - 0x6ec], 0
jmp 0x61729c
mov ecx, dword [ebp - 0xc2c]
mov dword [ebp - 0x4d8], ecx
push eax
xor eax, 0x1132c
sub eax, 0x16111
pop eax
push edi
push edx
add esp, 4
call 0x617067
add byte [esi + 0x4e], cl
inc ebx
xor eax, 0xc4834842
add al, 0x81
invalid
push esi
or esi, 0xc773
jmp 0x6172aa
call 0x6172b8
add byte [ebx + 0x35], al
inc ebp
cmp eax, 0x36324247
add esp, 4
add esi, 0xc47a
pop esi
push ecx
push ecx
add esp, 4
add ecx, 0x10ff5
pop ecx
cmp dword [ebp - 0x6ec], 0
jne 0x617318
push ecx
push esi
add esp, 4
jmp 0x6172e2
jmp 0x6172e8
xor ecx, 0x16ab8
pop ecx
push ebx
or ebx, 0xd000
xor ebx, 0x96bc
add ebx, 0x2309
add ebx, 0x5943
pop ebx
mov dword [ebp - 0x738], 0
jmp 0x617e3f
push esi
jmp 0x617320
pop esi
push eax
push edi
add esp, 4
jmp 0x61732b
sub eax, 0x10c2e
call 0x617340
add byte [edi + ecx*2 + 0x4d], al
inc ebx
dec ecx
push eax
xor eax, 0x4c4834c
sub eax, 0x3959
pop eax
mov eax, dword [ebp - 0x6ec]
mov ecx, dword [eax + 0x18]
mov dword [ebp - 0x2f8], ecx
mov dword [ebp - 0x6fc], 0
mov edx, dword [ebp - 0x2f8]
mov dword [ebp - 0x14e8], edx
cmp dword [ebp - 0x14e8], 0
jne 0x617389
mov eax, dword [ebp - 0x6fc]
mov dword [ebp - 0x3c4], eax
jmp 0x61767a
mov ecx, dword [ebp - 0x14e8]
mov edx, dword [ebp - 0x2f8]
add edx, dword [ecx + 0x3c]
mov dword [ebp - 0x14ec], edx
jne 0x6173b1
mov eax, dword [ebp - 0x6fc]
mov dword [ebp - 0x3c4], eax
jmp 0x61767a
mov ecx, 8
imul edx, ecx, 0
mov eax, dword [ebp - 0x14ec]
mov ecx, dword [eax + edx + 0x78]
mov dword [ebp - 0x14f0], ecx
cmp dword [ebp - 0x14f0], 0
jne 0x6173e3
mov edx, dword [ebp - 0x6fc]
mov dword [ebp - 0x3c4], edx
jmp 0x61767a
mov eax, dword [ebp - 0x2f8]
add eax, dword [ebp - 0x14f0]
mov dword [ebp - 0x6f0], eax
jne 0x617408
mov ecx, dword [ebp - 0x6fc]
mov dword [ebp - 0x3c4], ecx
jmp 0x61767a
mov edx, dword [ebp - 0x6f0]
mov eax, dword [ebp - 0x2f8]
add eax, dword [edx + 0x20]
mov dword [ebp - 0x18a0], eax
mov ecx, dword [ebp - 0x6f0]
mov edx, dword [ebp - 0x2f8]
add edx, dword [ecx + 0x24]
mov dword [ebp - 0x18a4], edx
mov eax, dword [ebp - 0x6f0]
mov ecx, dword [ebp - 0x2f8]
add ecx, dword [eax + 0x1c]
mov dword [ebp - 0x18a8], ecx
mov dword [ebp - 0x6f4], 0
jmp 0x617462
mov edx, dword [ebp - 0x6f4]
add edx, 1
mov dword [ebp - 0x6f4], edx
mov eax, dword [ebp - 0x6f0]
mov ecx, dword [ebp - 0x6f4]
cmp ecx, dword [eax + 0x18]
jae 0x61766e
mov edx, dword [ebp - 0x6f4]
mov eax, dword [ebp - 0x18a0]
mov ecx, dword [ebp - 0x2f8]
add ecx, dword [eax + edx*4]
mov dword [ebp - 0x6f8], ecx
mov edx, dword [ebp - 0x6f4]
mov eax, dword [ebp - 0x18a4]
movzx ecx, word [eax + edx*2]
mov edx, dword [ebp - 0x18a8]
mov eax, dword [ebp - 0x2f8]
add eax, dword [edx + ecx*4]
mov dword [ebp - 0x18ac], eax
mov dword [ebp - 0x180], 0
jmp 0x6174d2
mov ecx, dword [ebp - 0x180]
add ecx, 1
mov dword [ebp - 0x180], ecx
mov edx, dword [ebp - 0x6f8]
add edx, dword [ebp - 0x180]
movsx eax, byte [edx]
test eax, eax
je 0x617584
mov ecx, dword [ebp - 0x180]
movsx edx, byte [ebp + ecx - 0x820]
test edx, edx
je 0x617584
push ebx
add ebx, 0x15cde
and ebx, 0xfd78
pop ebx
push esi
jmp 0x617516
xor esi, 0x14ec6
pop esi
push edi
add edi, 0x84bb
sub edi, 0x10e15
sub edi, 0x71b7
pop edi
mov eax, dword [ebp - 0x6f8]
add eax, dword [ebp - 0x180]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x180]
movsx eax, byte [ebp + edx - 0x820]
cmp ecx, eax
je 0x617576
mov ecx, dword [ebp - 0x6f8]
add ecx, dword [ebp - 0x180]
movsx edx, byte [ecx]
xor edx, 0x20
mov eax, dword [ebp - 0x180]
movsx ecx, byte [ebp + eax - 0x820]
cmp edx, ecx
jne 0x61757d
jmp 0x6174c3
jmp 0x617584
push edx
and edx, 0x3efc
or edx, 0x178ae
pop edx
push eax
push ebx
add esp, 4
add eax, 0x176f1
pop eax
push edx
push esi
add esp, 4
sub edx, 0xce4c
xor edx, 0xd9aa
or edx, 0xdc1b
pop edx
mov edx, dword [ebp - 0x6f8]
add edx, dword [ebp - 0x180]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x180]
movsx edx, byte [ebp + ecx - 0x820]
cmp eax, edx
jne 0x6175e3
mov dword [ebp - 0xc30], 0
jmp 0x617652
push ecx
xor ecx, 0x3467
xor ecx, 0x1e2a
add ecx, 0x17002
or ecx, 0x658e
pop ecx
push ebx
xor ebx, 0x4f7f
pop ebx
push ecx
xor ecx, 0xeda1
jmp 0x617614
pop ecx
mov eax, dword [ebp - 0x6f8]
add eax, dword [ebp - 0x180]
movsx ecx, byte [eax]
or ecx, 0x20
mov edx, dword [ebp - 0x180]
movsx eax, byte [ebp + edx - 0x820]
or eax, 0x20
cmp ecx, eax
jge 0x617648
mov dword [ebp - 0xc30], 0xffffffff
jmp 0x617652
mov dword [ebp - 0xc30], 1
cmp dword [ebp - 0xc30], 0
jne 0x617669
mov ecx, dword [ebp - 0x18ac]
mov dword [ebp - 0x3c4], ecx
jmp 0x61767a
jmp 0x617453
mov edx, dword [ebp - 0x6fc]
mov dword [ebp - 0x3c4], edx
cmp dword [ebp - 0x3c4], 0
je 0x617755
push ecx
or ecx, 0x5f41
sub ecx, 0x107b7
and ecx, 0x928e
pop ecx
push ecx
push eax
add esp, 4
sub ecx, 0x39a6
pop ecx
push edx
push esi
add esp, 4
xor edx, 0x132ba
add edx, 0x71ee
pop edx
mov eax, dword [ebp - 0x3c4]
mov dword [ebp - 0x18b0], eax
push edx
and edx, 0xc38c
add edx, 0x578e
call 0x6176df
add byte [eax + 0x44], cl
dec esp
inc esi
xor al, byte [edi + 0x37]
add esp, 4
pop edx
push esi
and esi, 0x14b6f
or esi, 0x15419
xor esi, 0x33e4
pop esi
mov ecx, dword [ebp - 0x18b0]
mov dword [ebp - 0x18b4], ecx
lea edx, [ebp - 0x1628]
push edx
call dword [ebp - 0x18b4]
test eax, eax
jne 0x617755
push eax
push ebx
add esp, 4
sub eax, 0xa536
call 0x61772c
add byte [edi], bh
cmp dword [edx + esi], edi
dec esi
cmp al, 0x83
les eax, [eax + ebp*8]
or byte [eax], al
add byte [eax], al
add byte [esi + 0x3d], cl
push eax
xor al, 0x38
inc esp
inc ecx
add esp, 4
or eax, 0xdc5c
pop eax
mov dword [ebp - 0x738], 0
jmp 0x617e3f
push edx
push edi
add esp, 4
call 0x617768
add byte [eax*2 + 0x4d343b46], dh
aas
inc esi
add esp, 4
call 0x617777
add byte [0x4a504744], dh
inc ebp
add esp, 4
or edx, 0x78a
xor edx, 0xe585
pop edx
mov eax, dword fs:[0x18]
mov dword [ebp - 0x18b8], eax
mov ecx, dword [ebp - 0x18b8]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0x18bc], edx
mov eax, dword [ebp - 0x18bc]
mov dword [ebp - 0x14f4], eax
push edi
sub edi, 0x18362
or edi, 0x10793
call 0x6177ca
add byte [ecx + 0x43], al
inc edi
dec esi
dec ebp
inc edi
cmp byte [esi], dh
dec esp
add esp, 4
pop edi
push ebx
push esi
add esp, 4
or ebx, 0x6836
add ebx, 0xa0d0
pop ebx
cmp dword [ebp - 0x14f4], 0
jne 0x6177f8
mov dword [ebp - 0x2e0], 0
jmp 0x617a9f
mov ecx, dword [ebp - 0x14f4]
mov edx, dword [ecx + 0xc]
mov eax, dword [edx + 0xc]
mov dword [ebp - 0xc3c], eax
push ebx
sub ebx, 0x8ed3
and ebx, 0xaf65
pop ebx
push esi
add esi, 0x4299
pop esi
push esi
or esi, 0x14719
jmp 0x61782f
pop esi
push edx
push ecx
add esp, 4
and edx, 0x169fe
pop edx
cmp dword [ebp - 0xc3c], 0
jne 0x617854
mov dword [ebp - 0x2e0], 0
jmp 0x617a9f
mov ecx, dword [ebp - 0xc3c]
mov dword [ebp - 0x4dc], ecx
push ebx
sub ebx, 0xdb31
jmp 0x61786d
call 0x61787d
add byte [eax + edi], bh
xor al, byte [ebp + 0x48]
dec edx
inc edi
dec eax
inc ebx
inc ecx
add esp, 4
pop ebx
push edx
push eax
add esp, 4
sub edx, 0x128f
jmp 0x617891
pop edx
lea edx, [ebp - 0x1628]
mov dword [ebp - 0xc38], edx
mov eax, dword [ebp - 0x4dc]
mov ecx, dword [eax + 0x30]
mov dword [ebp - 0xc34], ecx
xor edx, edx
mov word [ebp - 0x200], dx
xor eax, eax
mov word [ebp - 0x34], ax
push ebx
push esi
add esp, 4
call 0x6178d0
add byte [esi + 0x48], cl
xor eax, 0x4f374e32
dec edx
dec esi
add esp, 4
add ebx, 0x15583
pop ebx
push ebx
xor ebx, 0x5391
and ebx, 0x1212c
sub ebx, 0xc9a0
pop ebx
mov ecx, dword [ebp - 0xc34]
mov dx, word [ecx]
mov word [ebp - 0xf86], dx
mov eax, dword [ebp - 0xc34]
add eax, 2
mov dword [ebp - 0xc34], eax
mov cx, word [ebp - 0xf86]
mov word [ebp - 0x200], cx
mov edx, dword [ebp - 0xc38]
mov ax, word [edx]
mov word [ebp - 0xf88], ax
mov ecx, dword [ebp - 0xc38]
add ecx, 2
mov dword [ebp - 0xc38], ecx
mov dx, word [ebp - 0xf88]
mov word [ebp - 0x34], dx
push ecx
xor ecx, 0x178f9
xor ecx, 0x177fd
or ecx, 0x162d9
add ecx, 0xba00
pop ecx
push ebx
push edi
add esp, 4
add ebx, 0x13ac6
add ebx, 0xbadd
xor ebx, 0xb0ca
pop ebx
movzx eax, word [ebp - 0x34]
test eax, eax
jne 0x617994
movzx ecx, word [ebp - 0x200]
movzx edx, word [ebp - 0x34]
sub ecx, edx
mov dword [ebp - 0x14fc], ecx
jmp 0x6179ee
movzx eax, word [ebp - 0x200]
movzx ecx, word [ebp - 0x34]
cmp eax, ecx
je 0x6178bc
movzx edx, word [ebp - 0x200]
xor edx, 0x20
movzx eax, word [ebp - 0x34]
cmp edx, eax
je 0x6178bc
movzx ecx, word [ebp - 0x200]
movzx edx, word [ebp - 0x34]
cmp ecx, edx
jge 0x6179d8
mov dword [ebp - 0x14f8], 0xffffffff
jmp 0x6179e2
mov dword [ebp - 0x14f8], 1
mov eax, dword [ebp - 0x14f8]
mov dword [ebp - 0x14fc], eax
cmp dword [ebp - 0x14fc], 0
jne 0x617a37
push edi
jmp 0x6179ff
and edi, 0xc9ec
jmp 0x617a0c
sub edi, 0x944b
pop edi
push ecx
push edx
add esp, 4
call 0x617a25
add byte [ebx + 0x38], al
cmp bh, byte ss:[ebx + eax*2]
xor eax, dword [ebx - 0x74a6fb3c]
lea esp, [ebx + edi*8]
invalid
push esi
push eax
add esp, 4
add esi, 0x2959
and esi, 0x6ec7
or esi, 0xdae6
pop esi
push edx
push esi
add esp, 4
and edx, 0x1204d
xor edx, 0xb37
pop edx
push eax
xor eax, 0x1183e
pop eax
mov edx, dword [ebp - 0x4dc]
mov eax, dword [edx]
mov dword [ebp - 0x4dc], eax
mov ecx, dword [ebp - 0x4dc]
cmp ecx, dword [ebp - 0xc3c]
je 0x617a95
mov edx, dword [ebp - 0x4dc]
cmp dword [edx + 0x30], 0
jne 0x617860
mov dword [ebp - 0x2e0], 0
push esi
push ebx
add esp, 4
sub esi, 0x6d77
sub esi, 0xa26c
and esi, 0x637e
add esi, 0x8b55
pop esi
push esi
or esi, 0xb9b
pop esi
push ecx
push edi
add esp, 4
add ecx, 0xdd0f
pop ecx
mov eax, dword [ebp - 0x2e0]
mov ecx, dword [eax + 0x18]
mov dword [ebp - 0x2fc], ecx
push eax
or eax, 0x3ac1
add eax, 0x1a45
call 0x617afc
add byte [esi + 0x32], al
cmp eax, 0x403c464d
inc esi
cmp byte [ebx + 0x515804c4], al
push eax
add esp, 4
add ecx, 0xc5e1
and ecx, 0x116a6
pop ecx
mov dword [ebp - 0x70c], 0
mov edx, dword [ebp - 0x2fc]
mov dword [ebp - 0x1500], edx
cmp dword [ebp - 0x1500], 0
jne 0x617b42
mov eax, dword [ebp - 0x70c]
mov dword [ebp - 0x4e0], eax
jmp 0x617e33
mov ecx, dword [ebp - 0x1500]
mov edx, dword [ebp - 0x2fc]
add edx, dword [ecx + 0x3c]
mov dword [ebp - 0x1504], edx
jne 0x617b6a
mov eax, dword [ebp - 0x70c]
mov dword [ebp - 0x4e0], eax
jmp 0x617e33
mov ecx, 8
imul edx, ecx, 0
mov eax, dword [ebp - 0x1504]
mov ecx, dword [eax + edx + 0x78]
mov dword [ebp - 0x1508], ecx
cmp dword [ebp - 0x1508], 0
jne 0x617b9c
mov edx, dword [ebp - 0x70c]
mov dword [ebp - 0x4e0], edx
jmp 0x617e33
mov eax, dword [ebp - 0x2fc]
add eax, dword [ebp - 0x1508]
mov dword [ebp - 0x700], eax
jne 0x617bc1
mov ecx, dword [ebp - 0x70c]
mov dword [ebp - 0x4e0], ecx
jmp 0x617e33
mov edx, dword [ebp - 0x700]
mov eax, dword [ebp - 0x2fc]
add eax, dword [edx + 0x20]
mov dword [ebp - 0x18c0], eax
mov ecx, dword [ebp - 0x700]
mov edx, dword [ebp - 0x2fc]
add edx, dword [ecx + 0x24]
mov dword [ebp - 0x18c4], edx
mov eax, dword [ebp - 0x700]
mov ecx, dword [ebp - 0x2fc]
add ecx, dword [eax + 0x1c]
mov dword [ebp - 0x18c8], ecx
mov dword [ebp - 0x704], 0
jmp 0x617c1b
mov edx, dword [ebp - 0x704]
add edx, 1
mov dword [ebp - 0x704], edx
mov eax, dword [ebp - 0x700]
mov ecx, dword [ebp - 0x704]
cmp ecx, dword [eax + 0x18]
jae 0x617e27
mov edx, dword [ebp - 0x704]
mov eax, dword [ebp - 0x18c0]
mov ecx, dword [ebp - 0x2fc]
add ecx, dword [eax + edx*4]
mov dword [ebp - 0x708], ecx
mov edx, dword [ebp - 0x704]
mov eax, dword [ebp - 0x18c4]
movzx ecx, word [eax + edx*2]
mov edx, dword [ebp - 0x18c8]
mov eax, dword [ebp - 0x2fc]
add eax, dword [edx + ecx*4]
mov dword [ebp - 0x18cc], eax
mov dword [ebp - 0x184], 0
jmp 0x617c8b
mov ecx, dword [ebp - 0x184]
add ecx, 1
mov dword [ebp - 0x184], ecx
mov edx, dword [ebp - 0x708]
add edx, dword [ebp - 0x184]
movsx eax, byte [edx]
test eax, eax
je 0x617d3d
mov ecx, dword [ebp - 0x184]
movsx edx, byte [ebp + ecx - 0x804]
test edx, edx
je 0x617d3d
push edx
xor edx, 0x4027
pop edx
push edx
xor edx, 0x5196
and edx, 0x14d1a
pop edx
push ecx
push edx
add esp, 4
call 0x617ce0
add byte [eax + 0x46], cl
dec esi
dec edx
cmp al, 0x50
push eax
add esp, 4
or ecx, 0xffc0
pop ecx
mov eax, dword [ebp - 0x708]
add eax, dword [ebp - 0x184]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x184]
movsx eax, byte [ebp + edx - 0x804]
cmp ecx, eax
je 0x617d2f
mov ecx, dword [ebp - 0x708]
add ecx, dword [ebp - 0x184]
movsx edx, byte [ecx]
xor edx, 0x20
mov eax, dword [ebp - 0x184]
movsx ecx, byte [ebp + eax - 0x804]
cmp edx, ecx
jne 0x617d36
jmp 0x617c7c
jmp 0x617d3d
push edi
push ebx
add esp, 4
sub edi, 0xc955
add edi, 0x15251
pop edi
push ecx
push ebx
add esp, 4
xor ecx, 0x7a38
pop ecx
push ecx
sub ecx, 0x128b0
add ecx, 0x7c06
and ecx, 0x1a9b
pop ecx
mov edx, dword [ebp - 0x708]
add edx, dword [ebp - 0x184]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x184]
movsx edx, byte [ebp + ecx - 0x804]
cmp eax, edx
jne 0x617d9c
mov dword [ebp - 0xc40], 0
jmp 0x617e0b
push edx
or edx, 0x1612f
call 0x617daf
add byte [edi + 0x34], al
dec ecx
aaa
inc ecx
dec edx
add esp, 4
jmp 0x617dbb
call 0x617dca
add byte [esi + ecx*2 + 0x42], al
inc ecx
dec esp
dec ecx
inc ebp
cmp byte [ecx], bh
add esp, 4
pop edx
mov eax, dword [ebp - 0x708]
add eax, dword [ebp - 0x184]
movsx ecx, byte [eax]
or ecx, 0x20
mov edx, dword [ebp - 0x184]
movsx eax, byte [ebp + edx - 0x804]
or eax, 0x20
cmp ecx, eax
jge 0x617e01
mov dword [ebp - 0xc40], 0xffffffff
jmp 0x617e0b
mov dword [ebp - 0xc40], 1
cmp dword [ebp - 0xc40], 0
jne 0x617e22
mov ecx, dword [ebp - 0x18cc]
mov dword [ebp - 0x4e0], ecx
jmp 0x617e33
jmp 0x617c0c
mov edx, dword [ebp - 0x70c]
mov dword [ebp - 0x4e0], edx
mov eax, dword [ebp - 0x4e0]
mov dword [ebp - 0x738], eax
push esi
push ecx
add esp, 4
call 0x617e53
add byte [ebp + 0x3d], cl
xor eax, 0x3f434950
dec ebx
add esp, 4
xor esi, 0xacea
pop esi
push ebx
or ebx, 0xb17
xor ebx, 0x1752e
and ebx, 0x14255
pop ebx
mov ecx, dword [ebp - 0x3cc]
add ecx, 0xe
mov dword [ebp - 0x1918], ecx
push edx
xor edx, 0x3d92
call 0x617e94
add byte [esi], bh
inc ebx
dec ebx
dec ebp
cmp bh, byte [ebx]
aaa
add esp, 4
xor edx, 0x138f1
pop edx
push esi
add esi, 0xc7c4
and esi, 0x14ab4
add esi, 0xc666
pop esi
cmp dword [ebp - 0x3cc], 0
je 0x617ec4
cmp dword [ebp - 0xa5c], 0
jne 0x617f0a
push edx
push edi
add esp, 4
call 0x617ed8
add byte [edi], bh
inc ebx
aaa
xor cl, byte [esi + 0x3b]
dec edx
inc edi
cmp eax, dword [ebx + 0x525a04c4]
push ebx
add esp, 4
jmp 0x617ee7
and edx, 0x12439
jmp 0x617ef5
pop edx
mov edx, dword [ebp - 0x738]
mov dword [ebp - 0x18d0], edx
push 0
call dword [ebp - 0x18d0]
mov dword [ebp - 0x1fb0], 0xa
push ecx
xor ecx, 0x9e
or ecx, 0xa913
or ecx, 0x13757
xor ecx, 0x515c
pop ecx
push eax
push edi
add esp, 4
or eax, 0x7214
and eax, 0x5ee9
and eax, 0x9052
pop eax
mov eax, dword [ebp - 0x3cc]
mov cl, byte [eax + 0xa]
mov byte [ebp - 0x381], cl
mov edx, dword [ebp - 0xa5c]
sub edx, dword [ebp - 0x3cc]
mov dword [ebp - 0x158c], edx
mov dword [ebp - 0xc70], 0
push esi
push eax
add esp, 4
call 0x617f85
add byte [0x36404f3b], bh
xor eax, dword [edi + 0x37]
inc esi
add esp, 4
and esi, 0x18ec
xor esi, 0xdc5e
add esi, 0x147c
pop esi
push edi
sub edi, 0xe8e7
pop edi
mov byte [ebp - 0x960], 0x56
mov byte [ebp - 0x95f], 0x69
mov byte [ebp - 0x95e], 0x72
mov byte [ebp - 0x95d], 0x74
mov byte [ebp - 0x95c], 0x75
mov byte [ebp - 0x95b], 0x61
mov byte [ebp - 0x95a], 0x6c
mov byte [ebp - 0x959], 0x50
mov byte [ebp - 0x958], 0x72
mov byte [ebp - 0x957], 0x6f
mov byte [ebp - 0x956], 0x74
mov byte [ebp - 0x955], 0x65
mov byte [ebp - 0x954], 0x63
mov byte [ebp - 0x953], 0x74
mov byte [ebp - 0x952], 0
push ecx
add ecx, 0x134f1
pop ecx
push edi
and edi, 0xd21b
jmp 0x618023
xor edi, 0x10af
and edi, 0xaa91
pop edi
push esi
xor esi, 0x15b1
xor esi, 0x8248
pop esi
mov eax, dword fs:[0x18]
mov dword [ebp - 0x1c34], eax
mov ecx, dword [ebp - 0x1c34]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0x18d4], edx
mov eax, dword [ebp - 0x18d4]
mov dword [ebp - 0x150c], eax
push edx
or edx, 0xaf6
sub edx, 0x7128
and edx, 0x3d0c
pop edx
push eax
push ecx
add esp, 4
or eax, 0x13f7e
add eax, 0x16bdb
pop eax
push esi
push edx
add esp, 4
xor esi, 0x14e65
pop esi
cmp dword [ebp - 0x150c], 0
jne 0x6180af
mov dword [ebp - 0x2a8], 0
jmp 0x618356
mov ecx, dword [ebp - 0x150c]
mov edx, dword [ecx + 0xc]
mov eax, dword [edx + 0xc]
mov dword [ebp - 0xc4c], eax
push esi
sub esi, 0xda14
sub esi, 0x17e2e
add esi, 0x46f9
pop esi
push ebx
push esi
add esp, 4
xor ebx, 0x5d17
xor ebx, 0xb281
xor ebx, 0x56b7
and ebx, 0x956c
pop ebx
cmp dword [ebp - 0xc4c], 0
jne 0x61810b
mov dword [ebp - 0x2a8], 0
jmp 0x618356
mov ecx, dword [ebp - 0xc4c]
mov dword [ebp - 0x4e4], ecx
push ecx
call 0x618125
add byte [esi], bh
xor eax, 0x3f4e433a
xor eax, dword [ebx + 0x8e804c4]
add byte [eax], al
add byte [eax], al
aas
dec eax
inc esp
aas
xor al, 0x4c
add esp, 4
call 0x618145
add byte [0x4e4c3f4c], bh
cmp esi, dword [edx]
add esp, 4
pop ecx
lea edx, [ebp - 0x1628]
mov dword [ebp - 0xc48], edx
mov eax, dword [ebp - 0x4e4]
mov ecx, dword [eax + 0x30]
mov dword [ebp - 0xc44], ecx
xor edx, edx
mov word [ebp - 0x204], dx
xor eax, eax
mov word [ebp - 0x38], ax
push edi
push edx
add esp, 4
add edi, 0x15e97
add edi, 0x1754d
pop edi
push edi
push ecx
add esp, 4
jmp 0x61818f
call 0x61819b
add byte [edi + 0x34], al
dec edi
cmp byte [ecx + 0x36], cl
add esp, 4
or edi, 0x10fdb
pop edi
mov ecx, dword [ebp - 0xc44]
mov dx, word [ecx]
mov word [ebp - 0xf8a], dx
mov eax, dword [ebp - 0xc44]
add eax, 2
mov dword [ebp - 0xc44], eax
mov cx, word [ebp - 0xf8a]
mov word [ebp - 0x204], cx
mov edx, dword [ebp - 0xc48]
mov ax, word [edx]
mov word [ebp - 0xf8c], ax
mov ecx, dword [ebp - 0xc48]
add ecx, 2
mov dword [ebp - 0xc48], ecx
mov dx, word [ebp - 0xf8c]
mov word [ebp - 0x38], dx
push ebx
push eax
add esp, 4
jmp 0x618207
add ebx, 0x6791
or ebx, 0xce5f
add ebx, 0xecbc
pop ebx
push eax
push ebx
add esp, 4
xor eax, 0x14cfe
pop eax
push eax
xor eax, 0x7770
pop eax
movzx eax, word [ebp - 0x38]
test eax, eax
jne 0x61824b
movzx ecx, word [ebp - 0x204]
movzx edx, word [ebp - 0x38]
sub ecx, edx
mov dword [ebp - 0x1514], ecx
jmp 0x6182a5
movzx eax, word [ebp - 0x204]
movzx ecx, word [ebp - 0x38]
cmp eax, ecx
je 0x618173
movzx edx, word [ebp - 0x204]
xor edx, 0x20
movzx eax, word [ebp - 0x38]
cmp edx, eax
je 0x618173
movzx ecx, word [ebp - 0x204]
movzx edx, word [ebp - 0x38]
cmp ecx, edx
jge 0x61828f
mov dword [ebp - 0x1510], 0xffffffff
jmp 0x618299
mov dword [ebp - 0x1510], 1
mov eax, dword [ebp - 0x1510]
mov dword [ebp - 0x1514], eax
cmp dword [ebp - 0x1514], 0
jne 0x6182ee
push esi
or esi, 0x167d7
pop esi
push edx
call 0x6182c7
add byte [eax + 0x34], cl
dec esi
dec esi
dec ecx
dec esi
dec esi
inc edx
push eax
dec edi
add esp, 4
sub edx, 0x15605
jmp 0x6182d9
and edx, 0x9897
pop edx
mov ecx, dword [ebp - 0x4e4]
mov dword [ebp - 0x2a8], ecx
jmp 0x618356
push edi
push ecx
add esp, 4
sub edi, 0x4c0e
and edi, 0xf088
and edi, 0x115f4
pop edi
push esi
push ebx
add esp, 4
add esi, 0x7c1b
pop esi
push edx
xor edx, 0x181ac
and edx, 0x46f0
pop edx
mov edx, dword [ebp - 0x4e4]
mov eax, dword [edx]
mov dword [ebp - 0x4e4], eax
mov ecx, dword [ebp - 0x4e4]
cmp ecx, dword [ebp - 0xc4c]
je 0x61834c
mov edx, dword [ebp - 0x4e4]
cmp dword [edx + 0x30], 0
jne 0x618117
mov dword [ebp - 0x2a8], 0
push edi
add edi, 0x151d7
add edi, 0xa392
sub edi, 0x11f9
pop edi
push ebx
push ebx
add esp, 4
xor ebx, 0x17dd4
xor ebx, 0xc020
sub ebx, 0x7b4a
or ebx, 0x13da5
pop ebx
cmp dword [ebp - 0x2a8], 0
jne 0x618c8d
mov eax, 0x6b
mov word [ebp - 0x16e8], ax
mov ecx, 0x65
mov word [ebp - 0x16e6], cx
mov edx, 0x72
mov word [ebp - 0x16e4], dx
mov eax, 0x6e
mov word [ebp - 0x16e2], ax
mov ecx, 0x65
mov word [ebp - 0x16e0], cx
mov edx, 0x6c
mov word [ebp - 0x16de], dx
mov eax, 0x33
mov word [ebp - 0x16dc], ax
mov ecx, 0x32
mov word [ebp - 0x16da], cx
mov edx, 0x2e
mov word [ebp - 0x16d8], dx
mov eax, 0x64
mov word [ebp - 0x16d6], ax
mov ecx, 0x6c
mov word [ebp - 0x16d4], cx
mov edx, 0x6c
mov word [ebp - 0x16d2], dx
xor eax, eax
mov word [ebp - 0x16d0], ax
push ecx
push ecx
add esp, 4
call 0x618442
add byte [ebp + 0x34], al
xor al, 0x3b
inc edi
xor al, 0x35
add esp, 4
pop ecx
push ebx
and ebx, 0xd82e
add ebx, 0xdfdb
and ebx, 0x5763
and ebx, 0x4e2a
pop ebx
mov byte [ebp - 0x830], 0x4c
mov byte [ebp - 0x82f], 0x6f
mov byte [ebp - 0x82e], 0x61
mov byte [ebp - 0x82d], 0x64
mov byte [ebp - 0x82c], 0x4c
mov byte [ebp - 0x82b], 0x69
mov byte [ebp - 0x82a], 0x62
mov byte [ebp - 0x829], 0x72
mov byte [ebp - 0x828], 0x61
mov byte [ebp - 0x827], 0x72
mov byte [ebp - 0x826], 0x79
mov byte [ebp - 0x825], 0x57
mov byte [ebp - 0x824], 0
mov ecx, dword fs:[0x18]
mov dword [ebp - 0x18d8], ecx
mov edx, dword [ebp - 0x18d8]
mov eax, dword [edx + 0x30]
mov dword [ebp - 0x18dc], eax
mov ecx, dword [ebp - 0x18dc]
mov dword [ebp - 0x1518], ecx
push ecx
and ecx, 0xb09b
pop ecx
push edx
push edx
add esp, 4
or edx, 0x83f5
add edx, 0xf05e
call 0x61850b
add byte [esi], bh
xor al, 0x37
inc esp
cmp al, 0x40
cmp eax, dword ss:[ebx + eax*4 - 0x3c]
add al, 0x81
retf 0x9e6b
push esi
jmp 0x618c94
add esi, 0xc462
jmp 0x618ca0
sub esi, 0xf4d8
pop esi
push eax
xor eax, 0xe437
pop eax
push esi
sub esi, 0x2b32
pop esi
push eax
add eax, 0xf115
pop eax
mov ecx, dword fs:[0x18]
mov dword [ebp - 0x18f8], ecx
mov edx, dword [ebp - 0x18f8]
mov eax, dword [edx + 0x30]
mov dword [ebp - 0x18fc], eax
mov ecx, dword [ebp - 0x18fc]
mov dword [ebp - 0x1574], ecx
push edi
push ecx
add esp, 4
and edi, 0x99f5
or edi, 0x7ff6
pop edi
push ebx
push ecx
add esp, 4
sub ebx, 0x4463
pop ebx
push eax
or eax, 0x740d
xor eax, 0xa2ba
xor eax, 0x14fd1
pop eax
cmp dword [ebp - 0x1574], 0
jne 0x618d31
mov dword [ebp - 0x2a8], 0
jmp 0x618fd8
mov edx, dword [ebp - 0x1574]
mov eax, dword [edx + 0xc]
mov ecx, dword [eax + 0xc]
mov dword [ebp - 0xc68], ecx
push edx
jmp 0x618d4a
and edx, 0x54f0
xor edx, 0x6fda
and edx, 0xdd38
pop edx
push ebx
push ecx
add esp, 4
add ebx, 0x147aa
and ebx, 0x17cf1
add ebx, 0x51d7
pop ebx
cmp dword [ebp - 0xc68], 0
jne 0x618d8d
mov dword [ebp - 0x2a8], 0
jmp 0x618fd8
mov edx, dword [ebp - 0xc68]
mov dword [ebp - 0x4ec], edx
push esi
push eax
add esp, 4
or esi, 0x11987
or esi, 0x12379
sub esi, 0x9df4
add esi, 0x538a
pop esi
push eax
call 0x618dc7
add byte [ecx], bh
cmp al, 0x33
dec edi
inc ebx
dec ebx
cmp dword ds:[ebx - 0x7d], eax
les eax, [eax + ebx*2]
lea eax, [ebp - 0x1628]
mov dword [ebp - 0xc64], eax
mov ecx, dword [ebp - 0x4ec]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0xc60], edx
xor eax, eax
mov word [ebp - 0x20c], ax
xor ecx, ecx
mov word [ebp - 0x40], cx
push eax
or eax, 0x35a2
xor eax, 0x14ea8
add eax, 0x1215d
pop eax
push ebx
push edi
add esp, 4
and ebx, 0x8235
jmp 0x618e1a
xor ebx, 0x10938
and ebx, 0x48d8
pop ebx
mov edx, dword [ebp - 0xc60]
mov ax, word [edx]
mov word [ebp - 0xf92], ax
mov ecx, dword [ebp - 0xc60]
add ecx, 2
mov dword [ebp - 0xc60], ecx
mov dx, word [ebp - 0xf92]
mov word [ebp - 0x20c], dx
mov eax, dword [ebp - 0xc64]
mov cx, word [eax]
mov word [ebp - 0xf94], cx
mov edx, dword [ebp - 0xc64]
add edx, 2
mov dword [ebp - 0xc64], edx
mov ax, word [ebp - 0xf94]
mov word [ebp - 0x40], ax
inc ebp
rcl byte [edx + 0x56], 0x83
les eax, [ecx + eax*4]
retf 0xba76
add byte [eax], al
pop edx
push edx
push edi
add esp, 4
sub edx, 0x9b45
xor edx, 0x16d20
add edx, 0x8f6f
add edx, 0x53d2
pop edx
push esi
xor esi, 0xb6b0
pop esi
movzx ecx, word [ebp - 0x40]
test ecx, ecx
jne 0x618ecd
movzx edx, word [ebp - 0x20c]
movzx eax, word [ebp - 0x40]
sub edx, eax
mov dword [ebp - 0x157c], edx
jmp 0x618f27
movzx ecx, word [ebp - 0x20c]
movzx edx, word [ebp - 0x40]
cmp ecx, edx
je 0x618df5
movzx eax, word [ebp - 0x20c]
xor eax, 0x20
movzx ecx, word [ebp - 0x40]
cmp eax, ecx
je 0x618df5
movzx edx, word [ebp - 0x20c]
movzx eax, word [ebp - 0x40]
cmp edx, eax
jge 0x618f11
mov dword [ebp - 0x1578], 0xffffffff
jmp 0x618f1b
mov dword [ebp - 0x1578], 1
mov ecx, dword [ebp - 0x1578]
mov dword [ebp - 0x157c], ecx
cmp dword [ebp - 0x157c], 0
jne 0x618f70
push edi
push ecx
add esp, 4
add edi, 0x2535
jmp 0x618f41
sub edi, 0x33eb
pop edi
push esi
add esi, 0x104cd
sub esi, 0x2ae
and esi, 0x4079
sub esi, 0xc170
pop esi
mov edx, dword [ebp - 0x4ec]
mov dword [ebp - 0x2a8], edx
jmp 0x618fd8
push esi
push ecx
add esp, 4
or esi, 0x4480
pop esi
push eax
sub eax, 0x16044
pop eax
push ecx
push edi
add esp, 4
and ecx, 0x6854
xor ecx, 0x8f8d
and ecx, 0x48cb
sub ecx, 0xeeec
pop ecx
mov eax, dword [ebp - 0x4ec]
mov ecx, dword [eax]
mov dword [ebp - 0x4ec], ecx
mov edx, dword [ebp - 0x4ec]
cmp edx, dword [ebp - 0xc68]
je 0x618fce
mov eax, dword [ebp - 0x4ec]
cmp dword [eax + 0x30], 0
jne 0x618d99
mov dword [ebp - 0x2a8], 0
push ecx
push edi
add esp, 4
xor ecx, 0x730a
sub ecx, 0x10a41
pop ecx
push ecx
call 0x618ffa
add byte [esi + 0x47], al
dec edx
aas
inc esi
inc ecx
dec ebp
dec eax
dec esp
add esp, 4
sub ecx, 0x16dad
or ecx, 0x71ca
pop ecx
mov ecx, dword [ebp - 0x2a8]
mov edx, dword [ecx + 0x18]
mov dword [ebp - 0x304], edx
push ecx
push edx
add esp, 4
or ecx, 0x4627
xor ecx, 0x3064
jmp 0x619032
add ecx, 0x489e
pop ecx
push edx
push edi
add esp, 4
xor edx, 0x1138a
add edx, 0x13aba
pop edx
mov dword [ebp - 0x730], 0
mov eax, dword [ebp - 0x304]
mov dword [ebp - 0x1580], eax
cmp dword [ebp - 0x1580], 0
jne 0x61907b
mov ecx, dword [ebp - 0x730]
mov dword [ebp - 0x4f0], ecx
jmp 0x61936c
mov edx, dword [ebp - 0x1580]
mov eax, dword [ebp - 0x304]
add eax, dword [edx + 0x3c]
mov dword [ebp - 0x1584], eax
jne 0x6190a3
mov ecx, dword [ebp - 0x730]
mov dword [ebp - 0x4f0], ecx
jmp 0x61936c
mov edx, 8
imul eax, edx, 0
mov ecx, dword [ebp - 0x1584]
mov edx, dword [ecx + eax + 0x78]
mov dword [ebp - 0x1588], edx
cmp dword [ebp - 0x1588], 0
jne 0x6190d5
mov eax, dword [ebp - 0x730]
mov dword [ebp - 0x4f0], eax
jmp 0x61936c
mov ecx, dword [ebp - 0x304]
add ecx, dword [ebp - 0x1588]
mov dword [ebp - 0x724], ecx
jne 0x6190fa
mov edx, dword [ebp - 0x730]
mov dword [ebp - 0x4f0], edx
jmp 0x61936c
mov eax, dword [ebp - 0x724]
mov ecx, dword [ebp - 0x304]
add ecx, dword [eax + 0x20]
mov dword [ebp - 0x1900], ecx
mov edx, dword [ebp - 0x724]
mov eax, dword [ebp - 0x304]
add eax, dword [edx + 0x24]
mov dword [ebp - 0x1904], eax
mov ecx, dword [ebp - 0x724]
mov edx, dword [ebp - 0x304]
add edx, dword [ecx + 0x1c]
mov dword [ebp - 0x1908], edx
mov dword [ebp - 0x728], 0
jmp 0x619154
mov eax, dword [ebp - 0x728]
add eax, 1
mov dword [ebp - 0x728], eax
mov ecx, dword [ebp - 0x724]
mov edx, dword [ebp - 0x728]
cmp edx, dword [ecx + 0x18]
jae 0x619360
mov eax, dword [ebp - 0x728]
mov ecx, dword [ebp - 0x1900]
mov edx, dword [ebp - 0x304]
add edx, dword [ecx + eax*4]
mov dword [ebp - 0x72c], edx
mov eax, dword [ebp - 0x728]
mov ecx, dword [ebp - 0x1904]
movzx edx, word [ecx + eax*2]
mov eax, dword [ebp - 0x1908]
mov ecx, dword [ebp - 0x304]
add ecx, dword [eax + edx*4]
mov dword [ebp - 0x190c], ecx
mov dword [ebp - 0x18c], 0
jmp 0x6191c4
mov edx, dword [ebp - 0x18c]
add edx, 1
mov dword [ebp - 0x18c], edx
mov eax, dword [ebp - 0x72c]
add eax, dword [ebp - 0x18c]
movsx ecx, byte [eax]
test ecx, ecx
je 0x619276
mov edx, dword [ebp - 0x18c]
movsx eax, byte [ebp + edx - 0x960]
test eax, eax
je 0x619276
push esi
sub esi, 0x17d58
xor esi, 0xe0c0
add esi, 0x666
sub esi, 0x94bd
pop esi
push ecx
push eax
add esp, 4
call 0x61921f
add byte [edi], dh
cmp dl, byte [eax + 0x50]
cmp byte [eax + 0x3d], dl
inc edx
aaa
add esp, 4
pop ecx
mov ecx, dword [ebp - 0x72c]
add ecx, dword [ebp - 0x18c]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x18c]
movsx ecx, byte [ebp + eax - 0x960]
cmp edx, ecx
je 0x619268
mov edx, dword [ebp - 0x72c]
add edx, dword [ebp - 0x18c]
movsx eax, byte [edx]
xor eax, 0x20
mov ecx, dword [ebp - 0x18c]
movsx edx, byte [ebp + ecx - 0x960]
cmp eax, edx
jne 0x61926f
jmp 0x6191b5
jmp 0x619276
push ecx
push eax
add esp, 4
xor ecx, 0x4141
pop ecx
push edi
jmp 0x619289
and edi, 0x7131
and edi, 0x18199
call 0x6192a4
add byte [0x4b483c33], dh
dec esp
dec edx
inc edx
aas
add esp, 4
pop edi
mov eax, dword [ebp - 0x72c]
add eax, dword [ebp - 0x18c]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x18c]
movsx eax, byte [ebp + edx - 0x960]
cmp ecx, eax
jne 0x6192d5
mov dword [ebp - 0xc6c], 0
jmp 0x619344
push edx
jmp 0x6192df
pop edx
push ecx
add ecx, 0x6e7d
sub ecx, 0x169f1
pop ecx
push eax
xor eax, 0x54f8
xor eax, 0x9f93
jmp 0x619300
or eax, 0x6972
pop eax
mov ecx, dword [ebp - 0x72c]
add ecx, dword [ebp - 0x18c]
movsx edx, byte [ecx]
or edx, 0x20
mov eax, dword [ebp - 0x18c]
movsx ecx, byte [ebp + eax - 0x960]
or ecx, 0x20
cmp edx, ecx
jge 0x61933a
mov dword [ebp - 0xc6c], 0xffffffff
jmp 0x619344
mov dword [ebp - 0xc6c], 1
cmp dword [ebp - 0xc6c], 0
jne 0x61935b
mov edx, dword [ebp - 0x190c]
mov dword [ebp - 0x4f0], edx
jmp 0x61936c
jmp 0x619145
mov eax, dword [ebp - 0x730]
mov dword [ebp - 0x4f0], eax
mov ecx, dword [ebp - 0x4f0]
mov dword [ebp - 0xa58], ecx
push eax
jmp 0x619382
call 0x619390
add byte [esi], bh
inc edx
dec ebx
inc ecx
dec edi
dec ecx
inc ecx
cmp byte [ebx - 0x3f7efb3c], al
ret