Function at 0x5b5790
Capabilities:
Encode data using base64
Parse credit card information

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x62dd6f
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x9c
push ebx
push esi
push edi
mov ebx, ecx
xor esi, esi
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x44], ebx
mov dword [ebp - 4], esi
mov dword [ebp - 0x60], esi
mov dword [ebp - 0x58], esi
mov word [ebp - 0x5c], si
mov dword [ebp - 0x20], esi
mov dword [ebp - 0x18], esi
mov word [ebp - 0x1c], si
mov edx, dword [ebx + 0xe4]
or ecx, 0xffffffff
mov edi, edx
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov byte [ebp - 4], 2
je 0x5b5822
push esi
push edx
lea ecx, [ebp - 0x20]
call fcn.00402e00
mov al, byte [ebx + 0x329]
mov edx, dword [ebp + 0x10]
mov ecx, dword [ebx + 0xe4]
push eax
neg al
push 1
push edx
sbb eax, eax
lea edx, [ebp - 0x20]
and eax, 0xfde9
push edx
push eax
push ecx
mov ecx, ebx
call fcn.005b5760
jmp 0x5b8367
mov eax, dword [0x6cc708]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebx + 0x11c]
mov byte [ebp - 4], 3
cmp eax, esi
mov byte [ebp - 0x25], 0
jne 0x5b5842
lea eax, [ebx + 0x120]
push eax
call fcn.005e639f
add esp, 4
test eax, eax
je 0x5b5a99
xor eax, eax
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x3c], eax
mov word [ebp - 0x38], si
mov edi, dword [ebx + 0x11c]
mov byte [ebp - 4], 4
cmp edi, esi
jne 0x5b5877
lea edi, [ebx + 0x120]
cmp edi, esi
je 0x5b58d8
cmp eax, esi
je 0x5b58d8
push edi
call fcn.005e639f
add esp, 4
test eax, eax
je 0x5b58d8
mov eax, dword [ebp - 0x3c]
cmp eax, edi
ja 0x5b58d8
push eax
call fcn.005e639f
mov ecx, dword [ebp - 0x3c]
add esp, 4
lea edx, [ecx + eax*2]
cmp edx, edi
jb 0x5b58d8
push edi
lea ecx, [ebp - 0x50]
mov dword [ebp - 0x50], esi
mov dword [ebp - 0x48], esi
mov word [ebp - 0x4c], si
call fcn.00402410
lea ecx, [ebp - 0x50]
mov byte [ebp - 4], 5
call fcn.00402400
push eax
lea ecx, [ebp - 0x3c]
call fcn.00402410
lea ecx, [ebp - 0x50]
mov byte [ebp - 4], 4
call fcn.00401070
jmp 0x5b5921
lea ecx, [ebp - 0x3c]
call fcn.00401070
cmp edi, esi
je 0x5b5921
push edi
call fcn.005e639f
add esp, 4
test eax, eax
je 0x5b5921
push edi
call fcn.005e639f
lea eax, [eax + eax + 2]
push eax
call fcn.005feedc
add esp, 8
cmp eax, esi
mov dword [ebp - 0x3c], eax
je 0x5b5928
push edi
call fcn.005e639f
mov ecx, dword [ebp - 0x3c]
push edi
push ecx
mov dword [ebp - 0x34], eax
call fcn.005e6569
add esp, 0xc
mov eax, dword [ebp - 0x3c]
cmp eax, esi
jne 0x5b592b
lea eax, [ebp - 0x38]
push 0x2e
push eax
call fcn.005e62ef
add esp, 8
cmp eax, esi
je 0x5b5a7f
add eax, 2
lea edx, [ebp - 0x40]
push eax
push edx
call fcn.00402500
add esp, 8
mov edx, dword [ebx + 0xec]
or ecx, 0xffffffff
mov edi, edx
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov byte [ebp - 4], 6
jne 0x5b5984
mov edx, dword [ebx + 0xdc]
cmp edx, esi
je 0x5b5a73
mov edi, edx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x5b5a73
cmp edx, esi
je 0x5b5a73
mov eax, dword [ebp - 0x40]
mov ecx, 0x6d1210
push eax
push edx
call fcn.004309f0
cmp eax, esi
je 0x5b5a73
mov edi, dword [ebp - 0x3c]
cmp edi, esi
jne 0x5b59b1
lea edi, [ebp - 0x38]
cmp edi, esi
je 0x5b5a13
cmp dword [ebp - 0x60], esi
je 0x5b5a13
push edi
call fcn.005e639f
add esp, 4
test eax, eax
je 0x5b5a13
mov eax, dword [ebp - 0x60]
cmp eax, edi
ja 0x5b5a13
push eax
call fcn.005e639f
mov ecx, dword [ebp - 0x60]
add esp, 4
lea edx, [ecx + eax*2]
cmp edx, edi
jb 0x5b5a13
push edi
lea ecx, [ebp - 0x50]
mov dword [ebp - 0x50], esi
mov dword [ebp - 0x48], esi
mov word [ebp - 0x4c], si
call fcn.00402410
lea ecx, [ebp - 0x50]
mov byte [ebp - 4], 7
call fcn.00402400
push eax
lea ecx, [ebp - 0x60]
call fcn.00402410
lea ecx, [ebp - 0x50]
mov byte [ebp - 4], 6
call fcn.00401070
jmp 0x5b5a5c
lea ecx, [ebp - 0x60]
call fcn.00401070
cmp edi, esi
je 0x5b5a5c
push edi
call fcn.005e639f
add esp, 4
test eax, eax
je 0x5b5a5c
push edi
call fcn.005e639f
lea eax, [eax + eax + 2]
push eax
call fcn.005feedc
add esp, 8
cmp eax, esi
mov dword [ebp - 0x60], eax
je 0x5b5a63
push edi
call fcn.005e639f
mov ecx, dword [ebp - 0x60]
push edi
push ecx
mov dword [ebp - 0x58], eax
call fcn.005e6569
add esp, 0xc
mov eax, dword [ebp - 0x60]
cmp eax, esi
jne 0x5b5a66
lea eax, [ebp - 0x5c]
push eax
lea ecx, [ebp - 0x2c]
call fcn.00602c86
mov byte [ebp - 0x25], 1
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 4
call fcn.00602ad6
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], 3
call fcn.00401070
mov al, byte [ebp - 0x25]
test al, al
jne 0x5b61a2
mov ebx, dword [ebp - 0x44]
mov edx, dword [ebx + 0x28]
push 0x6a28f0
push edx
call fcn.005e6490
add esp, 8
test eax, eax
je 0x5b6133
mov eax, dword [ebx + 0x28]
push 0x3d
push eax
call fcn.005e7360
mov ecx, dword [ebx + 0x28]
push 0x3f
push ecx
mov dword [ebp - 0x54], eax
call fcn.005e7360
add esp, 0x10
mov esi, eax
test esi, esi
mov dword [ebp - 0x68], esi
push 0x2f
je 0x5b5d3b
mov edx, dword [ebx + 0x28]
push edx
call fcn.005e63d0
add esp, 8
cmp eax, esi
mov dword [ebp - 0x24], eax
jbe 0x5b5d12
mov dword [ebp - 0x24], 0
test esi, esi
je 0x5b5b8f
mov eax, dword [ebp - 0x54]
test eax, eax
je 0x5b5b8f
mov ecx, dword [ebp - 0x68]
cmp eax, ecx
jbe 0x5b5b8f
mov edx, ecx
mov esi, eax
add edx, 5
cmp esi, edx
jb 0x5b5b4b
add esi, 0xfffffffc
push 4
push 0x6a0840
push esi
call fcn.005e9bc0
add esp, 0xc
test eax, eax
je 0x5b5b8f
push 4
push str.file
push esi
call fcn.005e9bc0
add esp, 0xc
test eax, eax
je 0x5b5b8f
mov esi, dword [ebp - 0x68]
or ecx, 0xffffffff
mov edi, esi
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [ebp - 0x54], 0
cmp ecx, 3
jb 0x5b5b88
push 0x2e
push esi
call fcn.005e63d0
add esp, 8
test eax, eax
je 0x5b5b88
inc esi
push 0x6c4aa0
push esi
call fcn.005e7b20
add esp, 8
test eax, eax
je 0x5b5b8f
mov dword [ebp - 0x68], 0
mov edx, dword [ebp - 0x54]
mov eax, dword [ebp - 0x68]
cmp edx, eax
mov byte [ebp - 0x2d], 0
jbe 0x5b5db1
cmp edx, dword [ebp - 0x24]
jbe 0x5b5db1
inc edx
or ecx, 0xffffffff
mov edi, edx
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x5b5f2d
push edx
lea ecx, [ebp - 0x2c]
call fcn.00602c5f
mov eax, dword [ebp - 0x2c]
push 0x2e
push eax
call fcn.005e7360
add esp, 8
mov dword [ebp - 0x40], eax
test eax, eax
je 0x5b5db1
cmp eax, dword [ebp - 0x2c]
je 0x5b5db1
mov ecx, dword [0x6cc708]
mov byte [ebp - 0x25], 0
mov dword [ebp - 0x64], ecx
mov edx, dword [ebx + 0x28]
lea eax, [ebp - 0x64]
push edx
push 0x6a00a0
push eax
mov byte [ebp - 4], 8
call fcn.005fb90b
mov ecx, dword [ebp - 0x64]
add esp, 0xc
push 0x3f
push ecx
call fcn.005e63d0
add esp, 8
test eax, eax
je 0x5b5c23
mov byte [eax], 0
mov edx, dword [ebp - 0x64]
push 0x2e
push edx
call fcn.005e7360
mov esi, eax
add esp, 8
test esi, esi
je 0x5b5ca0
inc esi
or ecx, 0xffffffff
mov edi, esi
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x5b5ca0
mov eax, dword [0x6cc708]
mov dword [ebp - 0x14], eax
push esi
lea ecx, [ebp - 0x14]
push 0x6a00a0
push ecx
mov byte [ebp - 4], 9
call fcn.005fb90b
add esp, 0xc
lea ecx, [ebp - 0x14]
call fcn.00602f1e
mov edx, dword [ebp - 0x14]
push edx
push str.3GP_7Z_AAC_ACE_AIF_ARJ_ASF_AVI_BIN_BZ2_EXE_GZ_GZIP_IMG_ISO_LZH_M4A_M4V_MKV_MOV_MP3_MP4_MPA_MPE_MPEG_MPG_MSI_MSU_OGG_OGV_PDF_PLJ_PPS_PPT_QT_R0_R1_RA_RAR_RM_RMVB_SEA_SIT_SITX_TAR_TIF_TIFF_WAV_WMA_WMV_Z_ZIP
call fcn.005e6490
add esp, 8
test eax, eax
je 0x5b5c94
push 0x2a
push esi
call fcn.005e63d0
add esp, 8
test eax, eax
jne 0x5b5c94
mov byte [ebp - 0x25], 1
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 8
call fcn.00602ad6
mov eax, dword [ebp - 0x40]
mov edx, dword [ebx + 0xec]
inc eax
mov edi, edx
mov dword [ebp - 0x40], eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
jne 0x5b5cd9
mov edx, dword [ebx + 0xdc]
test edx, edx
je 0x5b5d85
mov edi, edx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x5b5d85
mov edi, edx
test edi, edi
je 0x5b5d85
mov al, byte [ebp - 0x25]
test al, al
je 0x5b5d4f
push esi
push edi
mov ecx, 0x6d1210
call fcn.004309f0
test eax, eax
je 0x5b5d4f
lea eax, [ebp - 0x64]
lea ecx, [ebp - 0x2c]
push eax
call fcn.00602c0f
mov byte [ebp - 0x2d], 1
mov bl, byte [ebp - 0x2d]
jmp 0x5b5d9a
test eax, eax
je 0x5b5afb
inc eax
push 0x2f
push eax
call fcn.005e63d0
add esp, 8
test eax, eax
je 0x5b5afb
cmp eax, esi
jae 0x5b5afb
mov dword [ebp - 0x24], eax
jmp 0x5b5d1a
mov eax, dword [ebx + 0x28]
push eax
call fcn.005e7360
add esp, 8
mov dword [ebp - 0x24], eax
jmp 0x5b5b8f
mov ecx, dword [ebp - 0x40]
push ecx
lea ecx, [ebp - 0x40]
call fcn.00602b44
mov edx, dword [ebp - 0x40]
mov ecx, 0x6d1210
push edx
push edi
mov byte [ebp - 4], 0xa
call fcn.004309f0
test eax, eax
mov bl, 1
jne 0x5b5d77
mov bl, byte [ebp - 0x2d]
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 8
call fcn.00602ad6
jmp 0x5b5d9a
mov al, byte [ebp - 0x25]
test al, al
je 0x5b5d98
lea eax, [ebp - 0x64]
lea ecx, [ebp - 0x2c]
push eax
call fcn.00602c0f
mov bl, 1
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 3
call fcn.00602ad6
test bl, bl
jne 0x5b60c1
mov ebx, dword [ebp - 0x44]
mov edx, dword [ebp - 0x68]
mov eax, dword [ebp - 0x54]
mov esi, dword [ebp - 0x24]
cmp edx, eax
jbe 0x5b6084
cmp edx, esi
jbe 0x5b6084
test edx, edx
je 0x5b6064
inc edx
or ecx, 0xffffffff
mov edi, edx
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [ebp - 0x64], edx
je 0x5b6064
push edx
lea ecx, [ebp - 0x2c]
mov byte [ebp - 0x25], al
mov byte [ebp - 0x2d], al
call fcn.00602c5f
mov eax, dword [ebp - 0x2c]
push 0x2e
push eax
call fcn.005e7360
add esp, 8
mov dword [ebp - 0x24], eax
test eax, eax
je 0x5b6038
mov ecx, dword [0x6cc708]
mov dword [ebp - 0x54], ecx
mov edx, dword [ebx + 0x28]
lea eax, [ebp - 0x54]
push edx
push 0x6a00a0
push eax
mov byte [ebp - 4], 0xb
call fcn.005fb90b
mov ecx, dword [ebp - 0x54]
add esp, 0xc
push 0x3f
push ecx
call fcn.005e63d0
add esp, 8
test eax, eax
je 0x5b5e47
mov byte [eax], 0
mov edx, dword [ebp - 0x54]
push 0x2e
push edx
call fcn.005e7360
mov ebx, eax
add esp, 8
test ebx, ebx
je 0x5b5ec4
inc ebx
or ecx, 0xffffffff
mov edi, ebx
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x5b5ec4
mov eax, dword [0x6cc708]
mov dword [ebp - 0x14], eax
push ebx
lea ecx, [ebp - 0x14]
push 0x6a00a0
push ecx
mov byte [ebp - 4], 0xc
call fcn.005fb90b
add esp, 0xc
lea ecx, [ebp - 0x14]
call fcn.00602f1e
mov edx, dword [ebp - 0x14]
push edx
push str.3GP_7Z_AAC_ACE_AIF_ARJ_ASF_AVI_BIN_BZ2_EXE_GZ_GZIP_IMG_ISO_LZH_M4A_M4V_MKV_MOV_MP3_MP4_MPA_MPE_MPEG_MPG_MSI_MSU_OGG_OGV_PDF_PLJ_PPS_PPT_QT_R0_R1_RA_RAR_RM_RMVB_SEA_SIT_SITX_TAR_TIF_TIFF_WAV_WMA_WMV_Z_ZIP
call fcn.005e6490
add esp, 8
test eax, eax
je 0x5b5eb8
push 0x2a
push ebx
call fcn.005e63d0
add esp, 8
test eax, eax
jne 0x5b5eb8
mov byte [ebp - 0x25], 1
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 0xb
call fcn.00602ad6
mov eax, dword [ebp - 0x24]
mov edx, dword [ebp - 0x44]
inc eax
or ecx, 0xffffffff
mov esi, dword [edx + 0xec]
mov dword [ebp - 0x24], eax
mov edi, esi
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
jne 0x5b5f00
mov esi, dword [edx + 0xdc]
test esi, esi
je 0x5b5f99
mov edi, esi
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x5b5f99
test esi, esi
je 0x5b5f99
mov al, byte [ebp - 0x25]
test al, al
je 0x5b5f44
push ebx
push esi
mov ecx, 0x6d1210
call fcn.004309f0
test eax, eax
je 0x5b5f44
lea eax, [ebp - 0x54]
lea ecx, [ebp - 0x2c]
push eax
call fcn.00602c0f
jmp 0x5b5f88
mov ecx, dword [ebx + 0x28]
push ecx
lea ecx, [ebp - 0x2c]
call fcn.00602c5f
mov edx, dword [ebp - 0x2c]
push 0x3f
push edx
jmp 0x5b6076
mov ecx, dword [ebp - 0x24]
push ecx
lea ecx, [ebp - 0x40]
call fcn.00602b44
mov edx, dword [ebp - 0x40]
mov ecx, 0x6d1210
push edx
push esi
mov byte [ebp - 4], 0xd
call fcn.004309f0
test eax, eax
mov bl, 1
jne 0x5b5f6c
mov bl, byte [ebp - 0x2d]
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 0xb
call fcn.00602ad6
test bl, bl
jne 0x5b5f88
mov edx, dword [ebp - 0x64]
lea ecx, [ebp - 0x2c]
push edx
call fcn.00602c5f
lea ecx, [ebp - 0x54]
mov byte [ebp - 4], 3
call fcn.00602ad6
jmp 0x5b60c1
mov al, byte [ebp - 0x25]
test al, al
je 0x5b5fae
lea eax, [ebp - 0x54]
lea ecx, [ebp - 0x2c]
push eax
call fcn.00602c0f
jmp 0x5b5f88
mov edi, dword [ebp - 0x24]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
cmp ecx, 6
jae 0x5b6027
mov ecx, dword [0x6cc708]
mov dword [ebp - 0x14], ecx
mov esi, dword [ebp - 0x24]
lea edx, [ebp - 0x14]
push esi
push 0x6a00a0
push edx
mov byte [ebp - 4], 0xe
call fcn.005fb90b
add esp, 0xc
lea ecx, [ebp - 0x14]
call fcn.00602f1e
mov eax, dword [ebp - 0x14]
push eax
push str.3GP_7Z_AAC_ACE_AIF_ARJ_ASF_AVI_BIN_BZ2_EXE_GZ_GZIP_IMG_ISO_LZH_M4A_M4V_MKV_MOV_MP3_MP4_MPA_MPE_MPEG_MPG_MSI_MSU_OGG_OGV_PDF_PLJ_PPS_PPT_QT_R0_R1_RA_RAR_RM_RMVB_SEA_SIT_SITX_TAR_TIF_TIFF_WAV_WMA_WMV_Z_ZIP
call fcn.005e6490
add esp, 8
test eax, eax
je 0x5b6010
push 0x2a
push esi
call fcn.005e63d0
add esp, 8
mov bl, 1
test eax, eax
je 0x5b6013
mov bl, byte [ebp - 0x2d]
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 0xb
call fcn.00602ad6
test bl, bl
jne 0x5b5f88
lea ecx, [ebp - 0x54]
push ecx
lea ecx, [ebp - 0x2c]
call fcn.00602c0f
jmp 0x5b5f88
test esi, esi
je 0x5b6050
lea edx, [esi + 1]
or ecx, 0xffffffff
mov edi, edx
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x5b6050
push edx
jmp 0x5b6054
mov eax, dword [ebx + 0x28]
push eax
lea ecx, [ebp - 0x2c]
call fcn.00602c5f
mov ecx, dword [ebp - 0x2c]
push 0x3f
push ecx
jmp 0x5b6076
mov edx, dword [ebx + 0x28]
lea ecx, [ebp - 0x2c]
push edx
call fcn.00602c5f
mov eax, dword [ebp - 0x2c]
push 0x3f
push eax
call fcn.005e63d0
add esp, 8
test eax, eax
je 0x5b60c1
jmp 0x5b60be
test edx, edx
jne 0x5b60a0
test esi, esi
je 0x5b60a0
lea edx, [esi + 1]
or ecx, 0xffffffff
mov edi, edx
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x5b60a0
push edx
jmp 0x5b60a4
mov ecx, dword [ebx + 0x28]
push ecx
lea ecx, [ebp - 0x2c]
call fcn.00602c5f
mov edx, dword [ebp - 0x2c]
push 0x3f
push edx
call fcn.005e63d0
add esp, 8
test eax, eax
je 0x5b60c1
mov byte [eax], 0
mov eax, dword [ebp - 0x44]
mov ebx, dword [ebp - 0x2c]
lea ecx, [ebp - 0x60]
mov esi, dword [eax + 0x170]
call fcn.00401070
test ebx, ebx
je 0x5b61a2
mov edi, ebx
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x5b61a2
mov edi, dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
push eax
push eax
push 0xffffffffffffffff
push ebx
push eax
push esi
call edi
test eax, eax
mov dword [ebp - 0x58], eax
je 0x5b61a2
lea ecx, [eax + eax + 2]
push ecx
call fcn.005feedc
add esp, 4
mov dword [ebp - 0x60], eax
test eax, eax
je 0x5b61a9
mov edx, dword [ebp - 0x58]
push edx
push eax
push 0xffffffffffffffff
push ebx
push 0
push esi
call edi
mov dword [ebp - 0x58], eax
jmp 0x5b61a2
mov eax, dword [ebp - 0x44]
lea ecx, [ebp - 0x60]
mov esi, dword [eax + 0x170]
mov ebx, dword [eax + 0x28]
call fcn.00401070
test ebx, ebx
je 0x5b6193
mov edi, ebx
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x5b6193
mov edi, dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
push eax
push eax
push 0xffffffffffffffff
push ebx
push eax
push esi
call edi
test eax, eax
mov dword [ebp - 0x58], eax
je 0x5b6193
lea eax, [eax + eax + 2]
push eax
call fcn.005feedc
add esp, 4
mov dword [ebp - 0x60], eax
test eax, eax
je 0x5b6193
mov ecx, dword [ebp - 0x58]
push ecx
push eax
push 0xffffffffffffffff
push ebx
push 0
push esi
call edi
mov dword [ebp - 0x58], eax
mov edx, dword [ebp - 0x44]
lea ecx, [ebp - 0x2c]
mov eax, dword [edx + 0x28]
push eax
call fcn.00602c5f
mov eax, dword [ebp - 0x60]
test eax, eax
jne 0x5b61ac
lea eax, [ebp - 0x5c]
push eax
call fcn.005e639f
add esp, 4
cmp eax, 0x7d0
jae 0x5b61db
mov ecx, dword [ebp + 0x10]
push 0
push 1
push ecx
mov ecx, dword [ebp - 0x44]
lea edx, [ebp - 0x60]
push edx
mov edx, dword [ebp - 0x2c]
mov eax, dword [ecx + 0x170]
push eax
push edx
call fcn.005b5760
mov eax, dword [ebp - 0x60]
test eax, eax
jne 0x5b61e5
lea eax, [ebp - 0x5c]
push 0x3d
push eax
call fcn.005e62ef
mov edi, eax
mov eax, dword [ebp - 0x60]
add esp, 8
test eax, eax
jne 0x5b61fc
lea eax, [ebp - 0x5c]
push 0x3f
push eax
call fcn.005e62ef
mov ebx, eax
mov eax, dword [ebp - 0x60]
add esp, 8
test eax, eax
jne 0x5b6213
lea eax, [ebp - 0x5c]
push 0x2f
push eax
call fcn.005e62ef
add esp, 8
mov dword [ebp - 0x40], eax
test ebx, ebx
je 0x5b6279
test edi, edi
je 0x5b6279
cmp ebx, edi
jae 0x5b6238
lea ecx, [ebx + 0xa]
cmp edi, ecx
jae 0x5b6244
xor edi, edi
cmp ebx, edi
jbe 0x5b6287
cmp ebx, eax
jbe 0x5b6287
add ebx, 2
push ebx
jmp 0x5b628f
lea esi, [edi - 8]
push 4
push str.name
push esi
call fcn.005fb152
add esp, 0xc
test eax, eax
je 0x5b6276
push 4
push 0x6c4a88
push esi
call fcn.005fb152
add esp, 0xc
test eax, eax
je 0x5b6276
mov eax, dword [ebp - 0x40]
xor edi, edi
jmp 0x5b6236
mov eax, dword [ebp - 0x40]
cmp ebx, edi
jae 0x5b6238
cmp edi, eax
jbe 0x5b6236
add edi, 2
push edi
jmp 0x5b628f
test eax, eax
je 0x5b6297
add eax, 2
push eax
lea ecx, [ebp - 0x60]
call fcn.00402410
mov eax, dword [ebp - 0x60]
test eax, eax
jne 0x5b62a1
lea eax, [ebp - 0x5c]
push eax
lea ecx, [ebp - 0x20]
call fcn.00402410
mov eax, dword [ebp - 0x60]
test eax, eax
jne 0x5b62b4
lea eax, [ebp - 0x5c]
push eax
call fcn.005e639f
add esp, 4
test eax, eax
jne 0x5b652c
mov ebx, dword [ebp - 0x44]
mov esi, 1
mov edx, dword [ebx + 0x24]
test edx, edx
je 0x5b63be
mov edi, edx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
dec ecx
cmp ecx, esi
jbe 0x5b63be
mov eax, dword [0x6cc708]
mov dword [ebp - 0x24], eax
push edx
lea ecx, [ebp - 0x24]
push 0x6a00a0
push ecx
mov byte [ebp - 4], 0xf
call fcn.005fb90b
mov edx, dword [ebp - 0x24]
or ecx, 0xffffffff
mov edi, edx
xor eax, eax
add esp, 0xc
repne scasb al, byte es:[edi]
not ecx
dec ecx
cmp byte [ecx + edx - 1], 0x2f
jne 0x5b632d
dec ecx
push 0
push ecx
lea ecx, [ebp - 0x24]
call fcn.00602f42
mov edx, dword [ebp - 0x24]
push 0x2f
push edx
call fcn.005e7360
add esp, 8
test eax, eax
je 0x5b63aa
inc eax
lea edx, [ebp - 0x2c]
push eax
push str._s.html
push edx
call fcn.005fb90b
mov eax, dword [ebp - 0x2c]
add esp, 0xc
lea ecx, [ebp - 0x20]
push 0
push eax
call fcn.00402e00
mov eax, dword [ebp - 0x20]
xor esi, esi
test eax, eax
jne 0x5b6369
lea eax, [ebp - 0x1c]
push eax
call fcn.005e639f
add esp, 4
cmp eax, 0x7d0
jae 0x5b63aa
mov ecx, dword [ebp + 0x10]
mov eax, dword [ebx + 0x170]
push 0
push 1
lea edx, [ebp - 0x60]
push ecx
mov ecx, dword [ebp - 0x2c]
push edx
push eax
push ecx
mov ecx, ebx
call fcn.005b5760
mov eax, dword [ebp - 0x60]
test eax, eax
jne 0x5b63a1
lea eax, [ebp - 0x5c]
push eax
lea ecx, [ebp - 0x20]
call fcn.00402410
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 3
call fcn.00602ad6
test esi, esi
je 0x5b6508
mov eax, dword [ebx + 0x20]
test eax, eax
je 0x5b6508
xor esi, esi
lea ecx, [ebp - 0x3c]
push esi
push eax
mov dword [ebp - 0x3c], esi
mov dword [ebp - 0x34], esi
mov word [ebp - 0x38], si
call fcn.00402e00
mov eax, dword [ebp - 0x3c]
mov byte [ebp - 4], 0x10
cmp eax, esi
jne 0x5b63ed
lea eax, [ebp - 0x38]
push 0x2e
push eax
call fcn.005e62ef
add esp, 8
cmp eax, esi
je 0x5b64fc
xor esi, esi
mov word [eax], si
mov edi, dword [ebp - 0x3c]
cmp edi, esi
je 0x5b6433
push edi
call fcn.005e639f
add esp, 4
lea eax, [edi + eax*2]
cmp edi, eax
jae 0x5b642c
cmp word [edi], 0x2e
jne 0x5b6427
mov word [edi], 0x5f
add edi, 2
jmp 0x5b6418
mov eax, dword [ebp - 0x3c]
cmp eax, esi
jne 0x5b6436
lea eax, [ebp - 0x38]
mov edx, str._s_default.html
test edx, edx
je 0x5b64fc
cmp eax, esi
je 0x5b64fc
push eax
lea ecx, [ebp - 0x50]
mov dword [ebp - 0x50], esi
mov dword [ebp - 0x48], esi
mov word [ebp - 0x4c], si
call fcn.00402410
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], 0x11
call fcn.00401070
push str._s_default.html
lea ecx, [ebp - 0x74]
call fcn.00402380
mov edi, dword [ebp - 0x6c]
lea ecx, [ebp - 0x50]
mov byte [ebp - 4], 0x12
call fcn.00402400
push eax
call fcn.005e639f
lea ebx, [eax + edi + 2]
lea edi, [ebx + ebx]
push edi
call fcn.005feedc
mov edx, eax
add esp, 8
cmp edx, esi
mov dword [ebp - 0x20], edx
je 0x5b64e4
mov ecx, edi
mov edi, edx
mov edx, ecx
xor eax, eax
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
lea ecx, [ebp - 0x50]
call fcn.00402400
push eax
lea ecx, [ebp - 0x74]
call fcn.00402400
push eax
mov eax, dword [ebp - 0x20]
push ebx
push eax
call fcn.005e632f
mov ecx, dword [ebp - 0x20]
push ecx
call fcn.005e639f
add esp, 0x14
mov dword [ebp - 0x18], eax
lea ecx, [ebp - 0x74]
mov byte [ebp - 4], 0x11
call fcn.00401070
lea ecx, [ebp - 0x50]
mov byte [ebp - 4], 0x10
call fcn.00401070
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], 3
call fcn.00401070
mov eax, dword [ebp - 0x20]
test eax, eax
jne 0x5b6512
lea eax, [ebp - 0x1c]
push eax
call fcn.005e639f
add esp, 4
test eax, eax
jne 0x5b652c
push str.default.html
lea ecx, [ebp - 0x20]
call fcn.00402410
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x5b6558
push eax
mov edi, eax
call fcn.005e639f
add esp, 4
lea eax, [edi + eax*2]
cmp edi, eax
jae 0x5b6555
cmp word [edi], 0x3a
jne 0x5b6550
mov word [edi], 0x2d
add edi, 2
jmp 0x5b6541
mov eax, dword [ebp - 0x20]
mov cl, byte [ebp + 0x10]
test cl, cl
je 0x5b658c
test eax, eax
je 0x5b66b3
push eax
mov edi, eax
call fcn.005e639f
add esp, 4
lea eax, [edi + eax*2]
cmp edi, eax
jae 0x5b6589
cmp word [edi], 0x2a
jne 0x5b6584
mov word [edi], 0x2d
add edi, 2
jmp 0x5b6575
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x5b66b3
push eax
mov edi, eax
call fcn.005e639f
add esp, 4
lea eax, [edi + eax*2]
cmp edi, eax
jae 0x5b65b6
cmp word [edi], 0x3f
jne 0x5b65b1
mov word [edi], 0x2d
add edi, 2
jmp 0x5b65a2
mov edi, dword [ebp - 0x20]
test edi, edi
je 0x5b66b3
push edi
call fcn.005e639f
add esp, 4
lea eax, [edi + eax*2]
cmp edi, eax
jae 0x5b65e1
cmp word [edi], 0x7c
jne 0x5b65dc
mov word [edi], 0x2d
add edi, 2
jmp 0x5b65cd
mov edi, dword [ebp - 0x20]
test edi, edi
je 0x5b66b3
push edi
call fcn.005e639f
add esp, 4
lea eax, [edi + eax*2]
cmp edi, eax
jae 0x5b660c
cmp word [edi], 0x3c
jne 0x5b6607
mov word [edi], 0x2d
add edi, 2
jmp 0x5b65f8
mov edi, dword [ebp - 0x20]
test edi, edi
je 0x5b66b3
push edi
call fcn.005e639f
add esp, 4
lea eax, [edi + eax*2]
cmp edi, eax
jae 0x5b6637
cmp word [edi], 0x3e
jne 0x5b6632
mov word [edi], 0x2d
add edi, 2
jmp 0x5b6623
mov edi, dword [ebp - 0x20]
test edi, edi
je 0x5b66b3
push edi
call fcn.005e639f
add esp, 4
lea eax, [edi + eax*2]
cmp edi, eax
jae 0x5b665e
cmp word [edi], 0x22
jne 0x5b6659
mov word [edi], 0x2d
add edi, 2
jmp 0x5b664a
mov edi, dword [ebp - 0x20]
test edi, edi
je 0x5b66b3
push edi
call fcn.005e639f
add esp, 4
lea eax, [edi + eax*2]
cmp edi, eax
jae 0x5b6685
cmp word [edi], 0x25
jne 0x5b6680
mov word [edi], 0x2d
add edi, 2
jmp 0x5b6671
mov edi, dword [ebp - 0x20]
test edi, edi
je 0x5b66b3
push edi
call fcn.005e639f
add esp, 4
lea eax, [edi + eax*2]
cmp edi, eax
jae 0x5b66ac
cmp word [edi], 0x5c
jne 0x5b66a7
mov word [edi], 0x2d
add edi, 2
jmp 0x5b6698
mov edi, dword [ebp - 0x20]
test edi, edi
jne 0x5b66b6
lea edi, [ebp - 0x1c]
push edi
call fcn.005e639f
add esp, 4
xor ecx, ecx
cmp ecx, eax
jge 0x5b66d5
cmp word [edi + ecx*2], 0x20
jae 0x5b66d2
mov word [edi + ecx*2], 0x2d
inc ecx
jmp 0x5b66c1
mov eax, dword [0x6d12d8]
test eax, eax
jne 0x5b70af
mov eax, dword [ebp - 0x20]
test eax, eax
jne 0x5b66ec
lea eax, [ebp - 0x1c]
push 0x202a
push eax
call fcn.005e699b
add esp, 8
test eax, eax
jne 0x5b671e
mov eax, dword [ebp - 0x20]
test eax, eax
jne 0x5b6708
lea eax, [ebp - 0x1c]
push 0x202d
push eax
call fcn.005e699b
add esp, 8
test eax, eax
je 0x5b6cb5
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x5b6cbc
mov edx, 0x6a4250
test edx, edx
je 0x5b68fb
mov eax, 0x6d0c3c
test eax, eax
je 0x5b68fb
push eax
push edx
call fcn.005e69c4
add esp, 8
test eax, eax
je 0x5b68fb
mov ecx, dword [ebp - 0x20]
push 0x6a4250
push ecx
call fcn.005e6c00
add esp, 8
mov edi, eax
xor ebx, ebx
test edi, edi
je 0x5b678e
push 0x6a4250
inc ebx
call fcn.005e639f
lea eax, [edi + eax*2]
push 0x6a4250
push eax
call fcn.005e6c00
add esp, 0xc
mov edi, eax
jmp 0x5b676a
test ebx, ebx
je 0x5b68fb
mov edx, dword [ebp - 0x20]
xor eax, eax
push edx
lea ecx, [ebp - 0x3c]
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x34], eax
mov word [ebp - 0x38], ax
call fcn.00402410
push 0x6a4250
mov byte [ebp - 4], 0x13
call fcn.005e639f
push 0x6d0c3c
mov esi, eax
call fcn.005e639f
add esp, 8
cmp eax, esi
jbe 0x5b681f
lea ecx, [ebp - 0x20]
call fcn.00401070
lea ecx, [ebp - 0x3c]
call fcn.00402400
push eax
call fcn.005e639f
push 0x6a4250
mov esi, eax
call fcn.005e639f
push 0x6d0c3c
mov edi, eax
call fcn.005e639f
sub eax, edi
imul eax, ebx
add esi, eax
lea eax, [esi + esi + 2]
push eax
call fcn.005feedc
mov ebx, eax
add esp, 0x10
test ebx, ebx
mov dword [ebp - 0x20], ebx
jne 0x5b6822
jmp 0x5b68ef
mov ebx, dword [ebp - 0x20]
lea ecx, [ebp - 0x3c]
call fcn.00402400
push 0x6a4250
push eax
mov dword [ebp - 0x24], eax
call fcn.005e6c00
add esp, 8
test eax, eax
mov dword [ebp - 0x14], eax
je 0x5b68b2
mov esi, dword [ebp - 0x24]
mov edi, ebx
sub eax, esi
push 0x6d0c3c
sar eax, 1
shl eax, 1
mov ecx, eax
add ebx, eax
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.005e639f
mov ecx, eax
mov esi, 0x6d0c3c
shl ecx, 1
mov eax, ecx
mov edi, ebx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
push 0x6d0c3c
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.005e639f
push 0x6a4250
lea ebx, [ebx + eax*2]
call fcn.005e639f
mov ecx, dword [ebp - 0x14]
push 0x6a4250
lea eax, [ecx + eax*2]
push eax
mov dword [ebp - 0x24], eax
call fcn.005e6c00
add esp, 0x14
jmp 0x5b683b
mov esi, dword [ebp - 0x24]
push esi
call fcn.005e639f
mov ecx, eax
mov edi, ebx
shl ecx, 1
mov edx, ecx
mov eax, dword [ebp - 0x24]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
push eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.005e639f
lea ebx, [ebx + eax*2]
mov word [ebx], 0
mov ecx, dword [ebp - 0x20]
push ecx
call fcn.005e639f
add esp, 0xc
mov dword [ebp - 0x18], eax
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], 3
call fcn.00401070
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x5b6cbc
mov edx, 0x6a424c
test edx, edx
je 0x5b6ad8
mov eax, 0x6d0c3c
test eax, eax
je 0x5b6ad8
push eax
push edx
call fcn.005e69c4
add esp, 8
test eax, eax
je 0x5b6ad8
mov ecx, dword [ebp - 0x20]
push 0x6a424c
push ecx
call fcn.005e6c00
add esp, 8
mov esi, eax
xor edi, edi
test esi, esi
je 0x5b696b
push 0x6a424c
inc edi
call fcn.005e639f
lea eax, [esi + eax*2]
push 0x6a424c
push eax
call fcn.005e6c00
add esp, 0xc
mov esi, eax
jmp 0x5b6947
test edi, edi
je 0x5b6ad8
mov edx, dword [ebp - 0x20]
xor eax, eax
push edx
lea ecx, [ebp - 0x3c]
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x34], eax
mov word [ebp - 0x38], ax
call fcn.00402410
push 0x6a424c
mov byte [ebp - 4], 0x14
call fcn.005e639f
push 0x6d0c3c
mov esi, eax
call fcn.005e639f
add esp, 8
cmp eax, esi
jbe 0x5b69fc
lea ecx, [ebp - 0x20]
call fcn.00401070
lea ecx, [ebp - 0x3c]
call fcn.00402400
push eax
call fcn.005e639f
push 0x6a424c
mov esi, eax
call fcn.005e639f
push 0x6d0c3c
mov ebx, eax
call fcn.005e639f
sub eax, ebx
imul eax, edi
add esi, eax
lea eax, [esi + esi + 2]
push eax
call fcn.005feedc
mov ebx, eax
add esp, 0x10
test ebx, ebx
mov dword [ebp - 0x20], ebx
jne 0x5b69ff
jmp 0x5b6acc
mov ebx, dword [ebp - 0x20]
lea ecx, [ebp - 0x3c]
call fcn.00402400
push 0x6a424c
push eax
mov dword [ebp - 0x24], eax
call fcn.005e6c00
add esp, 8
test eax, eax
mov dword [ebp - 0x14], eax
je 0x5b6a8f
mov esi, dword [ebp - 0x24]
mov edi, ebx
sub eax, esi
push 0x6d0c3c
sar eax, 1
shl eax, 1
mov ecx, eax
add ebx, eax
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.005e639f
mov ecx, eax
mov esi, 0x6d0c3c
shl ecx, 1
mov eax, ecx
mov edi, ebx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
push 0x6d0c3c
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.005e639f
push 0x6a424c
lea ebx, [ebx + eax*2]
call fcn.005e639f
mov ecx, dword [ebp - 0x14]
push 0x6a424c
lea eax, [ecx + eax*2]
push eax
mov dword [ebp - 0x24], eax
call fcn.005e6c00
add esp, 0x14
jmp 0x5b6a18
mov esi, dword [ebp - 0x24]
push esi
call fcn.005e639f
mov ecx, eax
mov edi, ebx
shl ecx, 1
mov edx, ecx
mov eax, dword [ebp - 0x24]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
push eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.005e639f
lea ebx, [ebx + eax*2]
mov word [ebx], 0
mov ecx, dword [ebp - 0x20]
push ecx
call fcn.005e639f
add esp, 0xc
mov dword [ebp - 0x18], eax
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], 3
call fcn.00401070
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x5b6cbc
mov edx, 0x6a4248
test edx, edx
je 0x5b6cb5
mov eax, 0x6d0c3c
test eax, eax
je 0x5b6cb5
push eax
push edx
call fcn.005e69c4
add esp, 8
test eax, eax
je 0x5b6cb5
mov ecx, dword [ebp - 0x20]
push 0x6a4248
push ecx
call fcn.005e6c00
add esp, 8
xor ebx, ebx
mov esi, eax
xor edi, edi
cmp esi, ebx
je 0x5b6b4a
push 0x6a4248
inc edi
call fcn.005e639f
lea eax, [esi + eax*2]
push 0x6a4248
push eax
call fcn.005e6c00
add esp, 0xc
mov esi, eax
jmp 0x5b6b26
cmp edi, ebx
je 0x5b6cb5
mov edx, dword [ebp - 0x20]
lea ecx, [ebp - 0x3c]
push edx
mov dword [ebp - 0x3c], ebx
mov dword [ebp - 0x34], ebx
mov word [ebp - 0x38], bx
call fcn.00402410
push 0x6a4248
mov byte [ebp - 4], 0x15
call fcn.005e639f
push 0x6d0c3c
mov esi, eax
call fcn.005e639f
add esp, 8
cmp eax, esi
jbe 0x5b6bd9
lea ecx, [ebp - 0x20]
call fcn.00401070
lea ecx, [ebp - 0x3c]
call fcn.00402400
push eax
call fcn.005e639f
push 0x6a4248
mov esi, eax
call fcn.005e639f
push 0x6d0c3c
mov ebx, eax
call fcn.005e639f
sub eax, ebx
imul eax, edi
add esi, eax
lea eax, [esi + esi + 2]
push eax
call fcn.005feedc
mov ebx, eax
add esp, 0x10
test ebx, ebx
mov dword [ebp - 0x20], ebx
jne 0x5b6bdc
jmp 0x5b6ca9
mov ebx, dword [ebp - 0x20]
lea ecx, [ebp - 0x3c]
call fcn.00402400
push 0x6a4248
push eax
mov dword [ebp - 0x24], eax
call fcn.005e6c00
add esp, 8
test eax, eax
mov dword [ebp - 0x14], eax
je 0x5b6c6c
mov esi, dword [ebp - 0x24]
mov edi, ebx
sub eax, esi
push 0x6d0c3c
sar eax, 1
shl eax, 1
mov ecx, eax
add ebx, eax
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.005e639f
mov ecx, eax
mov esi, 0x6d0c3c
shl ecx, 1
mov eax, ecx
mov edi, ebx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
push 0x6d0c3c
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.005e639f
push 0x6a4248
lea ebx, [ebx + eax*2]
call fcn.005e639f
mov ecx, dword [ebp - 0x14]
push 0x6a4248
lea eax, [ecx + eax*2]
push eax
mov dword [ebp - 0x24], eax
call fcn.005e6c00
add esp, 0x14
jmp 0x5b6bf5
mov esi, dword [ebp - 0x24]
push esi
call fcn.005e639f
mov ecx, eax
mov edi, ebx
shl ecx, 1
mov edx, ecx
mov eax, dword [ebp - 0x24]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
push eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.005e639f
lea ebx, [ebx + eax*2]
mov word [ebx], 0
mov ecx, dword [ebp - 0x20]
push ecx
call fcn.005e639f
add esp, 0xc
mov dword [ebp - 0x18], eax
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], 3
call fcn.00401070
mov eax, dword [ebp - 0x20]
test eax, eax
jne 0x5b6cbf
lea eax, [ebp - 0x1c]
push 0x200e
push eax
call fcn.005e699b
add esp, 8
test eax, eax
je 0x5b6eb2
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x5b6eb9
mov edx, 0x6a4244
test edx, edx
je 0x5b6eb2
mov eax, 0x6d0c3c
test eax, eax
je 0x5b6eb2
push eax
push edx
call fcn.005e69c4
add esp, 8
test eax, eax
je 0x5b6eb2
mov ecx, dword [ebp - 0x20]
push 0x6a4244
push ecx
call fcn.005e6c00
add esp, 8
xor ebx, ebx
mov esi, eax
xor edi, edi
cmp esi, ebx
je 0x5b6d47
push 0x6a4244
inc edi
call fcn.005e639f
lea eax, [esi + eax*2]
push 0x6a4244
push eax
call fcn.005e6c00
add esp, 0xc
mov esi, eax
jmp 0x5b6d23
cmp edi, ebx
je 0x5b6eb2
mov edx, dword [ebp - 0x20]
lea ecx, [ebp - 0x3c]
push edx
mov dword [ebp - 0x3c], ebx
mov dword [ebp - 0x34], ebx
mov word [ebp - 0x38], bx
call fcn.00402410
push 0x6a4244
mov byte [ebp - 4], 0x16
call fcn.005e639f
push 0x6d0c3c
mov esi, eax
call fcn.005e639f
add esp, 8
cmp eax, esi
jbe 0x5b6dd6
lea ecx, [ebp - 0x20]
call fcn.00401070
lea ecx, [ebp - 0x3c]
call fcn.00402400
push eax
call fcn.005e639f
push 0x6a4244
mov esi, eax
call fcn.005e639f
push 0x6d0c3c
mov ebx, eax
call fcn.005e639f
sub eax, ebx
imul eax, edi
add esi, eax
lea eax, [esi + esi + 2]
push eax
call fcn.005feedc
mov ebx, eax
add esp, 0x10
test ebx, ebx
mov dword [ebp - 0x20], ebx
jne 0x5b6dd9
jmp 0x5b6ea6
mov ebx, dword [ebp - 0x20]
lea ecx, [ebp - 0x3c]
call fcn.00402400
push 0x6a4244
push eax
mov dword [ebp - 0x24], eax
call fcn.005e6c00
add esp, 8
test eax, eax
mov dword [ebp - 0x14], eax
je 0x5b6e69
mov esi, dword [ebp - 0x24]
mov edi, ebx
sub eax, esi
push 0x6d0c3c
sar eax, 1
shl eax, 1
mov ecx, eax
add ebx, eax
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.005e639f
mov ecx, eax
mov esi, 0x6d0c3c
shl ecx, 1
mov eax, ecx
mov edi, ebx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
push 0x6d0c3c
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.005e639f
push 0x6a4244
lea ebx, [ebx + eax*2]
call fcn.005e639f
mov ecx, dword [ebp - 0x14]
push 0x6a4244
lea eax, [ecx + eax*2]
push eax
mov dword [ebp - 0x24], eax
call fcn.005e6c00
add esp, 0x14
jmp 0x5b6df2
mov esi, dword [ebp - 0x24]
push esi
call fcn.005e639f
mov ecx, eax
mov edi, ebx
shl ecx, 1
mov edx, ecx
mov eax, dword [ebp - 0x24]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
push eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.005e639f
lea ebx, [ebx + eax*2]
mov word [ebx], 0
mov ecx, dword [ebp - 0x20]
push ecx
call fcn.005e639f
add esp, 0xc
mov dword [ebp - 0x18], eax
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], 3
call fcn.00401070
mov eax, dword [ebp - 0x20]
test eax, eax
jne 0x5b6ebc
lea eax, [ebp - 0x1c]
push 0x200f
push eax
call fcn.005e699b
add esp, 8
test eax, eax
je 0x5b70af
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x5b70af
mov edx, 0x6a4240
test edx, edx
je 0x5b70af
mov eax, 0x6d0c3c
test eax, eax
je 0x5b70af
push eax
push edx
call fcn.005e69c4
add esp, 8
test eax, eax
je 0x5b70af
mov ecx, dword [ebp - 0x20]
push 0x6a4240
push ecx
call fcn.005e6c00
add esp, 8
mov esi, eax
xor edi, edi
test esi, esi
je 0x5b6f42
push 0x6a4240
inc edi
call fcn.005e639f
lea eax, [esi + eax*2]
push 0x6a4240
push eax
call fcn.005e6c00
add esp, 0xc
mov esi, eax
jmp 0x5b6f1e
test edi, edi
je 0x5b70af
mov edx, dword [ebp - 0x20]
xor eax, eax
push edx
lea ecx, [ebp - 0x3c]
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x34], eax
mov word [ebp - 0x38], ax
call fcn.00402410
push 0x6a4240
mov byte [ebp - 4], 0x17
call fcn.005e639f
push 0x6d0c3c
mov esi, eax
call fcn.005e639f
add esp, 8
cmp eax, esi
jbe 0x5b6fd3
lea ecx, [ebp - 0x20]
call fcn.00401070
lea ecx, [ebp - 0x3c]
call fcn.00402400
push eax
call fcn.005e639f
push 0x6a4240
mov esi, eax
call fcn.005e639f
push 0x6d0c3c
mov ebx, eax
call fcn.005e639f
sub eax, ebx
imul eax, edi
add esi, eax
lea eax, [esi + esi + 2]
push eax
call fcn.005feedc
mov ebx, eax
add esp, 0x10
test ebx, ebx
mov dword [ebp - 0x20], ebx
jne 0x5b6fd6
jmp 0x5b70a3
mov ebx, dword [ebp - 0x20]
lea ecx, [ebp - 0x3c]
call fcn.00402400
push 0x6a4240
push eax
mov dword [ebp - 0x24], eax
call fcn.005e6c00
add esp, 8
test eax, eax
mov dword [ebp - 0x14], eax
je 0x5b7066
mov esi, dword [ebp - 0x24]
mov edi, ebx
sub eax, esi
push 0x6d0c3c
sar eax, 1
shl eax, 1
mov ecx, eax
add ebx, eax
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.005e639f
mov ecx, eax
mov esi, 0x6d0c3c
shl ecx, 1
mov eax, ecx
mov edi, ebx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
push 0x6d0c3c
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.005e639f
push 0x6a4240
lea ebx, [ebx + eax*2]
call fcn.005e639f
mov ecx, dword [ebp - 0x14]
push 0x6a4240
lea eax, [ecx + eax*2]
push eax
mov dword [ebp - 0x24], eax
call fcn.005e6c00
add esp, 0x14
jmp 0x5b6fef
mov esi, dword [ebp - 0x24]
push esi
call fcn.005e639f
mov ecx, eax
mov edi, ebx
shl ecx, 1
mov edx, ecx
mov eax, dword [ebp - 0x24]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
push eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.005e639f
lea ebx, [ebx + eax*2]
mov word [ebx], 0
mov ecx, dword [ebp - 0x20]
push ecx
call fcn.005e639f
add esp, 0xc
mov dword [ebp - 0x18], eax
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], 3
call fcn.00401070
mov edi, dword [ebp - 0x44]
push 0x3f
mov edx, dword [edi + 0x28]
push edx
call fcn.005e63d0
mov esi, eax
mov eax, dword [edi + 0x28]
push 0x2e
push eax
call fcn.005e63d0
mov ebx, eax
mov eax, dword [ebp - 0x20]
xor edi, edi
add esp, 0x10
cmp eax, edi
mov dword [ebp - 0x40], ebx
jne 0x5b70de
lea eax, [ebp - 0x1c]
push eax
lea ecx, [ebp - 0x80]
mov dword [ebp - 0x80], edi
mov dword [ebp - 0x78], edi
mov word [ebp - 0x7c], di
call fcn.00402410
mov eax, dword [ebp - 0x80]
mov byte [ebp - 4], 0x18
cmp eax, edi
jne 0x5b70ff
lea eax, [ebp - 0x7c]
push 0x2e
push eax
call fcn.005e62ef
mov edi, eax
add esp, 8
test edi, edi
je 0x5b7127
mov word [edi], 0
add edi, 2
push edi
call fcn.005e639f
add esp, 4
test eax, eax
jne 0x5b7127
xor edi, edi
test esi, esi
je 0x5b80eb
test ebx, ebx
je 0x5b8058
cmp ebx, esi
ja 0x5b8058
mov ecx, dword [ebp - 0x40]
lea ebx, [ecx + 1]
cmp ebx, esi
je 0x5b8058
test edi, edi
jne 0x5b80eb
mov edx, dword [ebp - 0x44]
or ecx, 0xffffffff
xor eax, eax
mov edx, dword [edx + 0x28]
mov edi, edx
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x5b7e9b
mov edi, esi
sub edi, edx
inc edi
push edi
call fcn.005feedc
mov ebx, eax
add esp, 4
test ebx, ebx
mov dword [ebp - 0x24], ebx
je 0x5b80eb
mov ecx, edi
xor eax, eax
mov edx, ecx
mov edi, ebx
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
mov eax, dword [ebp - 0x44]
mov ecx, esi
mov eax, dword [eax + 0x28]
sub ecx, eax
push ecx
push eax
push ebx
call fcn.005e6720
add esp, 0xc
lea ecx, [ebp - 0x20]
push 0
push ebx
call fcn.00402e00
mov edx, dword [ebp + 0x10]
mov ecx, dword [ebp - 0x44]
push 0
push 1
push edx
mov edx, dword [ecx + 0x170]
lea eax, [ebp - 0x20]
push eax
push edx
push ebx
call fcn.005b5760
push 0x2e
push ebx
call fcn.005e7360
add esp, 8
mov dword [ebp - 0x14], eax
test eax, eax
je 0x5b80e2
push eax
call fcn.005b4b40
add esp, 4
test al, al
je 0x5b80e2
mov edi, dword [ebp - 0x44]
push 0x3d
mov eax, dword [edi + 0x28]
push eax
call fcn.005e7360
mov edi, dword [edi + 0x28]
mov edx, eax
or ecx, 0xffffffff
xor eax, eax
add esp, 8
mov dword [ebp - 0x40], edi
repne scasb al, byte es:[edi]
not ecx
dec ecx
cmp edx, esi
jbe 0x5b80e2
mov eax, dword [ebp - 0x40]
cmp byte [eax + ecx - 1], 0x2e
je 0x5b80e2
inc edx
or ecx, 0xffffffff
mov edi, edx
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
cmp ecx, 0xa
jle 0x5b724e
lea edx, [edx + ecx - 0xa]
mov eax, dword [ebp - 0x14]
mov byte [eax], 0
mov ecx, dword [0x6cc708]
mov dword [ebp - 0x40], ecx
inc eax
mov byte [ebp - 4], 0x19
push eax
push edx
push ebx
lea edx, [ebp - 0x40]
push str._s__s._s
push edx
call fcn.005fb90b
mov eax, dword [ebp - 0x40]
add esp, 0x14
lea ecx, [ebp - 0x20]
push 0
push eax
call fcn.00402e00
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x5b72b0
push eax
mov esi, eax
call fcn.005e639f
add esp, 4
lea eax, [esi + eax*2]
cmp esi, eax
jae 0x5b72ad
cmp word [esi], 0x3a
jne 0x5b72a8
mov word [esi], 0x2d
add esi, 2
jmp 0x5b7299
mov eax, dword [ebp - 0x20]
mov cl, byte [ebp + 0x10]
test cl, cl
je 0x5b72e4
test eax, eax
je 0x5b74b7
push eax
mov esi, eax
call fcn.005e639f
add esp, 4
lea eax, [esi + eax*2]
cmp esi, eax
jae 0x5b72e1
cmp word [esi], 0x2a
jne 0x5b72dc
mov word [esi], 0x2d
add esi, 2
jmp 0x5b72cd
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x5b74b7
push eax
mov esi, eax
call fcn.005e639f
add esp, 4
lea eax, [esi + eax*2]
cmp esi, eax
jae 0x5b730e
cmp word [esi], 0x3f
jne 0x5b7309
mov word [esi], 0x2d
add esi, 2
jmp 0x5b72fa
mov esi, dword [ebp - 0x20]
test esi, esi
je 0x5b74b7
push esi
call fcn.005e639f
add esp, 4
lea eax, [esi + eax*2]
cmp esi, eax
jae 0x5b7339
cmp word [esi], 0x7c
jne 0x5b7334
mov word [esi], 0x2d
add esi, 2
jmp 0x5b7325
mov esi, dword [ebp - 0x20]
test esi, esi
je 0x5b74b7
push esi
call fcn.005e639f
add esp, 4
lea eax, [esi + eax*2]
cmp esi, eax
jae 0x5b7364
cmp word [esi], 0x3c
jne 0x5b735f
mov word [esi], 0x2d
add esi, 2
jmp 0x5b7350
mov esi, dword [ebp - 0x20]
test esi, esi
je 0x5b74b7
push esi
call fcn.005e639f
add esp, 4
lea eax, [esi + eax*2]
cmp esi, eax
jae 0x5b738f
cmp word [esi], 0x3e
jne 0x5b738a
mov word [esi], 0x2d
add esi, 2
jmp 0x5b737b
mov esi, dword [ebp - 0x20]
test esi, esi
je 0x5b74b7
push esi
call fcn.005e639f
add esp, 4
lea eax, [esi + eax*2]
cmp esi, eax
jae 0x5b73ba
cmp word [esi], 0x22
jne 0x5b73b5
mov word [esi], 0x2d
add esi, 2
jmp 0x5b73a6
mov esi, dword [ebp - 0x20]
test esi, esi
je 0x5b74b7
push esi
call fcn.005e639f
add esp, 4
lea eax, [esi + eax*2]
cmp esi, eax
jae 0x5b73e5
cmp word [esi], 0x25
jne 0x5b73e0
mov word [esi], 0x2d
add esi, 2
jmp 0x5b73d1
mov esi, dword [ebp - 0x20]
test esi, esi
je 0x5b74b7
push esi
call fcn.005e639f
add esp, 4
lea eax, [esi + eax*2]
cmp esi, eax
jae 0x5b7410
cmp word [esi], 0x5c
jne 0x5b740b
mov word [esi], 0x2d
add esi, 2
jmp 0x5b73fc
mov esi, dword [ebp - 0x20]
test esi, esi
je 0x5b74b7
push esi
call fcn.005e639f
add esp, 4
lea eax, [esi + eax*2]
cmp esi, eax
jae 0x5b743b
cmp word [esi], 0x2f
jne 0x5b7436
mov word [esi], 0x5f
add esi, 2
jmp 0x5b7427
mov esi, dword [ebp - 0x20]
test esi, esi
je 0x5b74b7
push esi
call fcn.005e639f
add esp, 4
lea eax, [esi + eax*2]
cmp esi, eax
jae 0x5b7462
cmp word [esi], 0x27
jne 0x5b745d
mov word [esi], 0x5f
add esi, 2
jmp 0x5b744e
mov esi, dword [ebp - 0x20]
test esi, esi
je 0x5b74b7
push esi
call fcn.005e639f
add esp, 4
lea eax, [esi + eax*2]
cmp esi, eax
jae 0x5b7489
cmp word [esi], 0x2c
jne 0x5b7484
mov word [esi], 0x5f
add esi, 2
jmp 0x5b7475
mov esi, dword [ebp - 0x20]
test esi, esi
je 0x5b74b7
push esi
call fcn.005e639f
add esp, 4
lea eax, [esi + eax*2]
cmp esi, eax
jae 0x5b74b0
cmp word [esi], 0x3b
jne 0x5b74ab
mov word [esi], 0x5f
add esi, 2
jmp 0x5b749c
mov esi, dword [ebp - 0x20]
test esi, esi
jne 0x5b74ba
lea esi, [ebp - 0x1c]
push esi
call fcn.005e639f
add esp, 4
xor ecx, ecx
cmp ecx, eax
jge 0x5b74d9
cmp word [esi + ecx*2], 0x20
jae 0x5b74d6
mov word [esi + ecx*2], 0x2d
inc ecx
jmp 0x5b74c5
mov eax, dword [0x6d12d8]
test eax, eax
jne 0x5b7e87
mov eax, dword [ebp - 0x20]
test eax, eax
jne 0x5b74f0
lea eax, [ebp - 0x1c]
push 0x202a
push eax
call fcn.005e699b
add esp, 8
test eax, eax
jne 0x5b7522
mov eax, dword [ebp - 0x20]
test eax, eax
jne 0x5b750c
lea eax, [ebp - 0x1c]
push 0x202d
push eax
call fcn.005e699b
add esp, 8
test eax, eax
je 0x5b7aa5
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x5b7aac
mov ecx, 0x6a4250
test ecx, ecx
je 0x5b76fb
mov edx, 0x6d0c3c
test edx, edx
je 0x5b76fb
push edx
push ecx
call fcn.005e69c4
add esp, 8
test eax, eax
je 0x5b76fb
mov eax, dword [ebp - 0x20]
push 0x6a4250
push eax
call fcn.005e6c00
add esp, 8
mov esi, eax
xor edi, edi
test esi, esi
je 0x5b7592
push 0x6a4250
inc edi
call fcn.005e639f
lea eax, [esi + eax*2]
push 0x6a4250
push eax
call fcn.005e6c00
add esp, 0xc
mov esi, eax
jmp 0x5b756e
test edi, edi
je 0x5b76fb
mov ecx, dword [ebp - 0x20]
push ecx
lea ecx, [ebp - 0x50]
call fcn.0040e5a0
push 0x6a4250
mov byte [ebp - 4], 0x1a
call fcn.005e639f
push 0x6d0c3c
mov esi, eax
call fcn.005e639f
add esp, 8
cmp eax, esi
jbe 0x5b761f
lea ecx, [ebp - 0x20]
call fcn.00401070
mov esi, dword [ebp - 0x50]
test esi, esi
jne 0x5b75d9
lea esi, [ebp - 0x4c]
push 0x6a4250
call fcn.005e639f
push 0x6d0c3c
mov ebx, eax
call fcn.005e639f
mov edx, eax
push esi
sub edx, ebx
imul edx, edi
mov dword [ebp + 0x10], edx
call fcn.005e639f
mov edx, dword [ebp + 0x10]
add edx, eax
lea eax, [edx + edx + 2]
push eax
call fcn.005feedc
mov ebx, eax
add esp, 0x10
test ebx, ebx
mov dword [ebp - 0x20], ebx
jne 0x5b7622
jmp 0x5b76ef
mov ebx, dword [ebp - 0x20]
lea ecx, [ebp - 0x50]
call fcn.00402400
push 0x6a4250
push eax
mov dword [ebp - 0x14], eax
call fcn.005e6c00
add esp, 8
test eax, eax
mov dword [ebp + 0x10], eax
je 0x5b76b2
mov esi, dword [ebp - 0x14]
mov edi, ebx
sub eax, esi
push 0x6d0c3c
sar eax, 1
shl eax, 1
mov ecx, eax
add ebx, eax
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.005e639f
mov ecx, eax
mov esi, 0x6d0c3c
shl ecx, 1
mov eax, ecx
mov edi, ebx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
push 0x6d0c3c
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.005e639f
push 0x6a4250
lea ebx, [ebx + eax*2]
call fcn.005e639f
mov ecx, dword [ebp + 0x10]
push 0x6a4250
lea eax, [ecx + eax*2]
push eax
mov dword [ebp - 0x14], eax
call fcn.005e6c00
add esp, 0x14
jmp 0x5b763b
mov esi, dword [ebp - 0x14]
push esi
call fcn.005e639f
mov ecx, eax
mov edi, ebx
shl ecx, 1
mov edx, ecx
mov eax, dword [ebp - 0x14]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
push eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.005e639f
lea ebx, [ebx + eax*2]
mov word [ebx], 0
mov ecx, dword [ebp - 0x20]
push ecx
call fcn.005e639f
add esp, 0xc
mov dword [ebp - 0x18], eax
lea ecx, [ebp - 0x50]
mov byte [ebp - 4], 0x19
call fcn.00401070
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x5b7aac
mov edx, 0x6a424c
test edx, edx
je 0x5b78d4
mov eax, 0x6d0c3c
test eax, eax
je 0x5b78d4
push eax
push edx
call fcn.005e69c4
add esp, 8
test eax, eax
je 0x5b78d4
mov ecx, dword [ebp - 0x20]
push 0x6a424c
push ecx
call fcn.005e6c00
add esp, 8
mov esi, eax
xor edi, edi
test esi, esi
je 0x5b776b
push 0x6a424c
inc edi
call fcn.005e639f
lea eax, [esi + eax*2]
push 0x6a424c
push eax
call fcn.005e6c00
add esp, 0xc
mov esi, eax
jmp 0x5b7747
test edi, edi
je 0x5b78d4
mov edx, dword [ebp - 0x20]
lea ecx, [ebp - 0x50]
push edx
call fcn.0040e5a0
push 0x6a424c
mov byte [ebp - 4], 0x1b
call fcn.005e639f
push 0x6d0c3c
mov esi, eax
call fcn.005e639f
add esp, 8
cmp eax, esi
jbe 0x5b77f8
lea ecx, [ebp - 0x20]
call fcn.00401070
mov esi, dword [ebp - 0x50]
test esi, esi
jne 0x5b77b2
lea esi, [ebp - 0x4c]
push 0x6a424c
call fcn.005e639f
push 0x6d0c3c
mov ebx, eax
call fcn.005e639f
mov edx, eax
push esi
sub edx, ebx
imul edx, edi
mov dword [ebp + 0x10], edx
call fcn.005e639f
mov ecx, dword [ebp + 0x10]
add ecx, eax
lea edx, [ecx + ecx + 2]
push edx
call fcn.005feedc
mov ebx, eax
add esp, 0x10
test ebx, ebx
mov dword [ebp - 0x20], ebx
jne 0x5b77fb
jmp 0x5b78c8
mov ebx, dword [ebp - 0x20]
lea ecx, [ebp - 0x50]
call fcn.00402400
push 0x6a424c
push eax
mov dword [ebp - 0x14], eax
call fcn.005e6c00
add esp, 8
test eax, eax
mov dword [ebp + 0x10], eax
je 0x5b788b
mov esi, dword [ebp - 0x14]
mov edi, ebx
sub eax, esi
push 0x6d0c3c
sar eax, 1
shl eax, 1
mov ecx, eax
add ebx, eax
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.005e639f
mov ecx, eax
mov esi, 0x6d0c3c
shl ecx, 1
mov eax, ecx
mov edi, ebx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
push 0x6d0c3c
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.005e639f
push 0x6a424c
lea ebx, [ebx + eax*2]
call fcn.005e639f
mov ecx, dword [ebp + 0x10]
push 0x6a424c
lea eax, [ecx + eax*2]
push eax
mov dword [ebp - 0x14], eax
call fcn.005e6c00
add esp, 0x14
jmp 0x5b7814
mov esi, dword [ebp - 0x14]
push esi
call fcn.005e639f
mov ecx, eax
mov edi, ebx
shl ecx, 1
mov edx, ecx
mov eax, dword [ebp - 0x14]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
push eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.005e639f
lea ebx, [ebx + eax*2]
mov word [ebx], 0
mov ecx, dword [ebp - 0x20]
push ecx
call fcn.005e639f
add esp, 0xc
mov dword [ebp - 0x18], eax
lea ecx, [ebp - 0x50]
mov byte [ebp - 4], 0x19
call fcn.00401070
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x5b7aac
mov edx, 0x6a4248
test edx, edx
je 0x5b7aa5
mov eax, 0x6d0c3c
test eax, eax
je 0x5b7aa5
push eax
push edx
call fcn.005e69c4
add esp, 8
test eax, eax
je 0x5b7aa5
mov ecx, dword [ebp - 0x20]
push 0x6a4248
push ecx
call fcn.005e6c00
add esp, 8
mov esi, eax
xor edi, edi
test esi, esi
je 0x5b7944
push 0x6a4248
inc edi
call fcn.005e639f
lea eax, [esi + eax*2]
push 0x6a4248
push eax
call fcn.005e6c00
add esp, 0xc
mov esi, eax
jmp 0x5b7920
test edi, edi
je 0x5b7aa5
mov edx, dword [ebp - 0x20]
lea ecx, [ebp - 0x50]
push edx
call fcn.0040e5a0
push 0x6a4248
mov byte [ebp - 4], 0x1c
call fcn.005e639f
push 0x6d0c3c
mov esi, eax
call fcn.005e639f
add esp, 8
cmp eax, esi
jbe 0x5b79c9
lea ecx, [ebp - 0x20]
call fcn.00401070
lea ecx, [ebp - 0x50]
call fcn.00402400
push eax
call fcn.005e639f
push 0x6a4248
mov esi, eax
call fcn.005e639f
push 0x6d0c3c
mov ebx, eax
call fcn.005e639f
sub eax, ebx
imul eax, edi
add esi, eax
lea eax, [esi + esi + 2]
push eax
call fcn.005feedc
mov ebx, eax
add esp, 0x10
test ebx, ebx
mov dword [ebp - 0x20], ebx
jne 0x5b79cc
jmp 0x5b7a99
mov ebx, dword [ebp - 0x20]
lea ecx, [ebp - 0x50]
call fcn.00402400
push 0x6a4248
push eax
mov dword [ebp - 0x14], eax
call fcn.005e6c00
add esp, 8
test eax, eax
mov dword [ebp + 0x10], eax
je 0x5b7a5c
mov esi, dword [ebp - 0x14]
mov edi, ebx
sub eax, esi
push 0x6d0c3c
sar eax, 1
shl eax, 1
mov ecx, eax
add ebx, eax
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.005e639f
mov ecx, eax
mov esi, 0x6d0c3c
shl ecx, 1
mov eax, ecx
mov edi, ebx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
push 0x6d0c3c
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.005e639f
push 0x6a4248
lea ebx, [ebx + eax*2]
call fcn.005e639f
mov ecx, dword [ebp + 0x10]
push 0x6a4248
lea eax, [ecx + eax*2]
push eax
mov dword [ebp - 0x14], eax
call fcn.005e6c00
add esp, 0x14
jmp 0x5b79e5
mov esi, dword [ebp - 0x14]
push esi
call fcn.005e639f
mov ecx, eax
mov edi, ebx
shl ecx, 1
mov edx, ecx
mov eax, dword [ebp - 0x14]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
push eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.005e639f
lea ebx, [ebx + eax*2]
mov word [ebx], 0
mov ecx, dword [ebp - 0x20]
push ecx
call fcn.005e639f
add esp, 0xc
mov dword [ebp - 0x18], eax
lea ecx, [ebp - 0x50]
mov byte [ebp - 4], 0x19
call fcn.00401070
mov eax, dword [ebp - 0x20]
test eax, eax
jne 0x5b7aaf
lea eax, [ebp - 0x1c]
push 0x200e
push eax
call fcn.005e699b
add esp, 8
test eax, eax
je 0x5b7c96
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x5b7c9d
mov edx, 0x6a4244
test edx, edx
je 0x5b7c96
mov eax, 0x6d0c3c
test eax, eax
je 0x5b7c96
push eax
push edx
call fcn.005e69c4
add esp, 8
test eax, eax
je 0x5b7c96
mov ecx, dword [ebp - 0x20]
push 0x6a4244
push ecx
call fcn.005e6c00
add esp, 8
mov esi, eax
xor edi, edi
test esi, esi
je 0x5b7b35
push 0x6a4244
inc edi
call fcn.005e639f
lea eax, [esi + eax*2]
push 0x6a4244
push eax
call fcn.005e6c00
add esp, 0xc
mov esi, eax
jmp 0x5b7b11
test edi, edi
je 0x5b7c96
mov edx, dword [ebp - 0x20]
lea ecx, [ebp - 0x50]
push edx
call fcn.0040e5a0
push 0x6a4244
mov byte [ebp - 4], 0x1d
call fcn.005e639f
push 0x6d0c3c
mov esi, eax
call fcn.005e639f
add esp, 8
cmp eax, esi
jbe 0x5b7bba
lea ecx, [ebp - 0x20]
call fcn.00401070
lea ecx, [ebp - 0x50]
call fcn.00402400
push eax
call fcn.005e639f
push 0x6a4244
mov esi, eax
call fcn.005e639f
push 0x6d0c3c
mov ebx, eax
call fcn.005e639f
sub eax, ebx
imul eax, edi
add esi, eax
lea eax, [esi + esi + 2]
push eax
call fcn.005feedc
mov ebx, eax
add esp, 0x10
test ebx, ebx
mov dword [ebp - 0x20], ebx
jne 0x5b7bbd
jmp 0x5b7c8a
mov ebx, dword [ebp - 0x20]
lea ecx, [ebp - 0x50]
call fcn.00402400
push 0x6a4244
push eax
mov dword [ebp - 0x14], eax
call fcn.005e6c00
add esp, 8
test eax, eax
mov dword [ebp + 0x10], eax
je 0x5b7c4d
mov esi, dword [ebp - 0x14]
mov edi, ebx
sub eax, esi
push 0x6d0c3c
sar eax, 1
shl eax, 1
mov ecx, eax
add ebx, eax
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.005e639f
mov ecx, eax
mov esi, 0x6d0c3c
shl ecx, 1
mov eax, ecx
mov edi, ebx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
push 0x6d0c3c
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.005e639f
push 0x6a4244
lea ebx, [ebx + eax*2]
call fcn.005e639f
mov ecx, dword [ebp + 0x10]
push 0x6a4244
lea eax, [ecx + eax*2]
push eax
mov dword [ebp - 0x14], eax
call fcn.005e6c00
add esp, 0x14
jmp 0x5b7bd6
mov esi, dword [ebp - 0x14]
push esi
call fcn.005e639f
mov ecx, eax
mov edi, ebx
shl ecx, 1
mov edx, ecx
mov eax, dword [ebp - 0x14]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
push eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.005e639f
lea ebx, [ebx + eax*2]
mov word [ebx], 0
mov ecx, dword [ebp - 0x20]
push ecx
call fcn.005e639f
add esp, 0xc
mov dword [ebp - 0x18], eax
lea ecx, [ebp - 0x50]
mov byte [ebp - 4], 0x19
call fcn.00401070
mov eax, dword [ebp - 0x20]
test eax, eax
jne 0x5b7ca0
lea eax, [ebp - 0x1c]
push 0x200f
push eax
call fcn.005e699b
add esp, 8
test eax, eax
je 0x5b7e87
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x5b7e87
mov edx, 0x6a4240
test edx, edx
je 0x5b7e87
mov eax, 0x6d0c3c
test eax, eax
je 0x5b7e87
push eax
push edx
call fcn.005e69c4
add esp, 8
test eax, eax
je 0x5b7e87
mov ecx, dword [ebp - 0x20]
push 0x6a4240
push ecx
call fcn.005e6c00
add esp, 8
mov esi, eax
xor edi, edi
test esi, esi
je 0x5b7d26
push 0x6a4240
inc edi
call fcn.005e639f
lea eax, [esi + eax*2]
push 0x6a4240
push eax
call fcn.005e6c00
add esp, 0xc
mov esi, eax
jmp 0x5b7d02
test edi, edi
je 0x5b7e87
mov edx, dword [ebp - 0x20]
lea ecx, [ebp - 0x50]
push edx
call fcn.0040e5a0
push 0x6a4240
mov byte [ebp - 4], 0x1e
call fcn.005e639f
push 0x6d0c3c
mov esi, eax
call fcn.005e639f
add esp, 8
cmp eax, esi
jbe 0x5b7dab
lea ecx, [ebp - 0x20]
call fcn.00401070
lea ecx, [ebp - 0x50]
call fcn.00402400
push eax
call fcn.005e639f
push 0x6a4240
mov esi, eax
call fcn.005e639f
push 0x6d0c3c
mov ebx, eax
call fcn.005e639f
sub eax, ebx
imul eax, edi
add esi, eax
lea eax, [esi + esi + 2]
push eax
call fcn.005feedc
mov ebx, eax
add esp, 0x10
test ebx, ebx
mov dword [ebp - 0x20], ebx
jne 0x5b7dae
jmp 0x5b7e7b
mov ebx, dword [ebp - 0x20]
lea ecx, [ebp - 0x50]
call fcn.00402400
push 0x6a4240
push eax
mov dword [ebp - 0x14], eax
call fcn.005e6c00
add esp, 8
test eax, eax
mov dword [ebp + 0x10], eax
je 0x5b7e3e
mov esi, dword [ebp - 0x14]
mov edi, ebx
sub eax, esi
push 0x6d0c3c
sar eax, 1
shl eax, 1
mov ecx, eax
add ebx, eax
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.005e639f
mov ecx, eax
mov esi, 0x6d0c3c
shl ecx, 1
mov eax, ecx
mov edi, ebx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
push 0x6d0c3c
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.005e639f
push 0x6a4240
lea ebx, [ebx + eax*2]
call fcn.005e639f
mov ecx, dword [ebp + 0x10]
push 0x6a4240
lea eax, [ecx + eax*2]
push eax
mov dword [ebp - 0x14], eax
call fcn.005e6c00
add esp, 0x14
jmp 0x5b7dc7
mov esi, dword [ebp - 0x14]
push esi
call fcn.005e639f
mov ecx, eax
mov edi, ebx
shl ecx, 1
mov edx, ecx
mov eax, dword [ebp - 0x14]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
push eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.005e639f
lea ebx, [ebx + eax*2]
mov word [ebx], 0
mov ecx, dword [ebp - 0x20]
push ecx
call fcn.005e639f
add esp, 0xc
mov dword [ebp - 0x18], eax
lea ecx, [ebp - 0x50]
mov byte [ebp - 4], 0x19
call fcn.00401070
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 0x18
call fcn.00602ad6
mov ebx, dword [ebp - 0x24]
jmp 0x5b80e2
cmp ebx, esi
jae 0x5b7eb9
push 0x2e
push ebx
call fcn.005e63d0
add esp, 8
test eax, eax
je 0x5b7eb9
lea edx, [eax + 1]
cmp edx, esi
jae 0x5b7eb9
mov ebx, eax
jmp 0x5b7e9b
sub esi, ebx
lea edi, [esi + 1]
cmp edi, 1
jle 0x5b8047
push edi
call fcn.005feedc
mov edx, eax
mov ecx, edi
mov dword [ebp + 0x10], edx
mov edi, edx
mov edx, ecx
xor eax, eax
shr ecx, 2
rep stosd dword es:[edi], eax
add esp, 4
mov ecx, edx
and ecx, 3
push esi
mov esi, dword [ebp + 0x10]
push ebx
push esi
rep stosb byte es:[edi], al
call fcn.005e6720
add esp, 0xc
xor ebx, ebx
lea ecx, [ebp - 0x50]
mov dword [ebp - 0x50], ebx
push ebx
push esi
mov dword [ebp - 0x48], ebx
mov word [ebp - 0x4c], bx
call fcn.00402e00
mov eax, dword [ebp - 0x50]
mov byte [ebp - 4], 0x1f
cmp eax, ebx
mov edi, eax
jne 0x5b7f1d
lea edi, [ebp - 0x4c]
mov esi, dword [ebp - 0x80]
cmp esi, ebx
jne 0x5b7f27
lea esi, [ebp - 0x7c]
mov eax, 0x6a41ec
test eax, eax
je 0x5b802a
cmp esi, ebx
je 0x5b802a
cmp edi, ebx
je 0x5b802a
push eax
lea ecx, [ebp - 0x98]
call fcn.00402380
push esi
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], 0x20
call fcn.0040e5a0
push edi
lea ecx, [ebp - 0x74]
mov byte [ebp - 4], 0x21
call fcn.0040e5a0
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], 0x22
call fcn.00401070
mov esi, dword [ebp - 0x90]
lea ecx, [ebp - 0x74]
call fcn.00402400
push eax
call fcn.005e639f
add esp, 4
lea ecx, [ebp - 0x3c]
mov edi, eax
call fcn.00402400
push eax
call fcn.005e639f
add esi, edi
lea esi, [eax + esi + 3]
lea edi, [esi + esi]
push edi
call fcn.005feedc
mov edx, eax
add esp, 8
cmp edx, ebx
mov dword [ebp - 0x20], edx
je 0x5b8003
mov ecx, edi
mov edi, edx
mov edx, ecx
xor eax, eax
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
lea ecx, [ebp - 0x74]
call fcn.00402400
push eax
lea ecx, [ebp - 0x3c]
call fcn.00402400
push eax
lea ecx, [ebp - 0x98]
call fcn.00402400
push eax
mov eax, dword [ebp - 0x20]
push esi
push eax
call fcn.005e632f
mov ecx, dword [ebp - 0x20]
push ecx
call fcn.005e639f
add esp, 0x18
mov dword [ebp - 0x18], eax
lea ecx, [ebp - 0x74]
mov byte [ebp - 4], 0x21
call fcn.00401070
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], 0x20
call fcn.00401070
lea ecx, [ebp - 0x98]
mov byte [ebp - 4], 0x1f
call fcn.00401070
mov edx, dword [ebp + 0x10]
push edx
call fcn.005fef05
add esp, 4
lea ecx, [ebp - 0x50]
mov byte [ebp - 4], 0x18
call fcn.00401070
jmp 0x5b80eb
mov eax, dword [ebp - 0x80]
lea ecx, [ebp - 0x20]
push eax
call fcn.00402410
jmp 0x5b80eb
test edi, edi
jne 0x5b80eb
mov ecx, dword [ebp - 0x44]
xor eax, eax
mov edx, dword [ecx + 0x28]
or ecx, 0xffffffff
mov edi, edx
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x5b80eb
cmp esi, edx
jbe 0x5b80eb
mov eax, dword [ebp - 0x40]
inc eax
cmp eax, esi
je 0x5b80eb
mov edi, esi
sub edi, edx
inc edi
push edi
call fcn.005feedc
mov ebx, eax
add esp, 4
test ebx, ebx
je 0x5b80eb
mov ecx, edi
xor eax, eax
mov edx, ecx
mov edi, ebx
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
mov eax, dword [ebp - 0x44]
mov eax, dword [eax + 0x28]
sub esi, eax
push esi
push eax
push ebx
call fcn.005e6720
add esp, 0xc
lea ecx, [ebp - 0x20]
push 0
push ebx
call fcn.00402e00
mov ecx, dword [ebp + 0x10]
push 0
push 1
push ecx
mov ecx, dword [ebp - 0x44]
lea edx, [ebp - 0x20]
push edx
mov eax, dword [ecx + 0x170]
push eax
push ebx
call fcn.005b5760
push ebx
call fcn.005fef05
add esp, 4
mov ecx, dword [ebp - 0x44]
xor eax, eax
mov edx, dword [ecx + 0x350]
or ecx, 0xffffffff
mov edi, edx
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x5b834f
mov cl, byte [edx]
mov edx, dword [ebp - 0x20]
cmp cl, 0x2e
push edx
sete bl
xor esi, esi
lea ecx, [ebp - 0x3c]
mov dword [ebp - 0x3c], esi
mov dword [ebp - 0x34], esi
mov word [ebp - 0x38], si
call fcn.00402410
mov eax, dword [ebp - 0x3c]
mov byte [ebp - 4], 0x23
cmp eax, esi
jne 0x5b8134
lea eax, [ebp - 0x38]
push 0x2e
push eax
call fcn.005e62ef
mov esi, eax
xor edi, edi
add esp, 8
cmp esi, edi
je 0x5b82e6
test bl, bl
jne 0x5b8152
add esi, 2
lea eax, [ebp + 0x10]
push esi
push eax
call fcn.00402500
add esp, 8
mov ebx, dword [ebp - 0x44]
mov byte [ebp - 4], 0x24
mov eax, dword [ebx + 0x350]
mov ecx, dword [eax - 8]
inc ecx
push ecx
mov ecx, dword [ebp + 0x10]
push eax
push ecx
call fcn.005e86f0
add esp, 0xc
test eax, eax
je 0x5b82d8
mov word [esi], di
mov eax, dword [ebx + 0x350]
push edi
push eax
lea ecx, [ebp - 0x50]
mov dword [ebp - 0x50], edi
mov dword [ebp - 0x48], edi
mov word [ebp - 0x4c], di
call fcn.00402e00
mov eax, dword [ebp - 0x50]
mov byte [ebp - 4], 0x25
cmp eax, edi
mov ebx, eax
jne 0x5b81b3
lea ebx, [ebp - 0x4c]
mov esi, dword [ebp - 0x3c]
cmp esi, edi
jne 0x5b81bd
lea esi, [ebp - 0x38]
mov edx, 0x6a012c
test edx, edx
je 0x5b82cc
cmp esi, edi
je 0x5b82cc
cmp ebx, edi
je 0x5b82cc
push edx
lea ecx, [ebp - 0xa4]
call fcn.00402380
push esi
lea ecx, [ebp - 0x74]
mov byte [ebp - 4], 0x26
call fcn.0040e5a0
push ebx
lea ecx, [ebp - 0x98]
mov byte [ebp - 4], 0x27
call fcn.0040e5a0
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], 0x28
call fcn.00401070
mov esi, dword [ebp - 0x9c]
lea ecx, [ebp - 0x98]
call fcn.00402400
push eax
call fcn.005e639f
add esp, 4
lea ecx, [ebp - 0x74]
mov edi, eax
call fcn.00402400
push eax
call fcn.005e639f
add esi, edi
lea esi, [eax + esi + 3]
lea edi, [esi + esi]
push edi
call fcn.005feedc
mov edx, eax
add esp, 8
test edx, edx
mov dword [ebp - 0x20], edx
je 0x5b82a2
mov ecx, edi
mov edi, edx
mov edx, ecx
xor eax, eax
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
lea ecx, [ebp - 0x98]
call fcn.00402400
push eax
lea ecx, [ebp - 0x74]
call fcn.00402400
push eax
lea ecx, [ebp - 0xa4]
call fcn.00402400
push eax
mov eax, dword [ebp - 0x20]
push esi
push eax
call fcn.005e632f
mov ecx, dword [ebp - 0x20]
push ecx
call fcn.005e639f
add esp, 0x18
mov dword [ebp - 0x18], eax
lea ecx, [ebp - 0x98]
mov byte [ebp - 4], 0x27
call fcn.00401070
lea ecx, [ebp - 0x74]
mov byte [ebp - 4], 0x26
call fcn.00401070
lea ecx, [ebp - 0xa4]
mov byte [ebp - 4], 0x25
call fcn.00401070
lea ecx, [ebp - 0x50]
mov byte [ebp - 4], 0x24
call fcn.00401070
lea ecx, [ebp + 0x10]
mov byte [ebp - 4], 0x23
call fcn.00602ad6
jmp 0x5b8343
mov edx, dword [ebp - 0x44]
push edi
lea ecx, [ebp - 0x50]
mov dword [ebp - 0x50], edi
mov eax, dword [edx + 0x350]
mov dword [ebp - 0x48], edi
push eax
mov word [ebp - 0x4c], di
call fcn.00402e00
test bl, bl
mov byte [ebp - 4], 0x29
mov ecx, 0x6d0c3c
jne 0x5b8315
mov ecx, 0x6a0ee8
mov eax, dword [ebp - 0x50]
cmp eax, edi
jne 0x5b831f
lea eax, [ebp - 0x4c]
push eax
push ecx
lea ecx, [ebp - 0x3c]
call fcn.00402400
push eax
push 0x6a0c34
lea ecx, [ebp - 0x20]
call fcn.00441ce0
lea ecx, [ebp - 0x50]
mov byte [ebp - 4], 0x23
call fcn.00401070
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], 0x18
call fcn.00401070
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 3
call fcn.00401070
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 2
call fcn.00602ad6
mov edi, dword [ebp - 0x44]
mov eax, dword [edi + 0x44]
cmp eax, 4
je 0x5b8377
cmp eax, 5
jne 0x5b83ad
push 0x2e
lea ecx, [ebp - 0x20]
call fcn.00402400
push eax
call fcn.005e62ef
add esp, 8
test eax, eax
push str..flv
je 0x5b83a5
push eax
call fcn.005e8a3c
add esp, 8
test eax, eax
je 0x5b83ad
push str..flv
lea ecx, [ebp - 0x20]
call fcn.00460660
lea ecx, [ebp - 0x8c]
call fcn.0041cad0
mov esi, dword [ebp + 8]
mov byte [ebp - 4], 0x2a
test esi, esi
je 0x5b8441
push 0x2e
lea ecx, [ebp - 0x20]
call fcn.00402400
push eax
call fcn.005e62ef
mov ecx, dword [0x6cc708]
add esp, 8
mov dword [ebp + 0x10], ecx
test eax, eax
mov byte [ebp - 4], 0x2b
je 0x5b83f3
add eax, 2
lea ecx, [ebp + 0x10]
push eax
call fcn.00602c86
mov ecx, dword [edi + 0x20]
lea edx, [ebp - 0xa8]
lea eax, [ebp - 0x8c]
push edx
mov edx, dword [ebp + 0x10]
push eax
push ecx
push edx
mov ecx, esi
call fcn.004b0b80
test al, al
jne 0x5b8425
lea eax, [ebp - 0x8c]
push eax
call fcn.004473e0
add esp, 4
jmp 0x5b8433
mov ecx, dword [ebp - 0xa8]
push ecx
mov ecx, edi
call fcn.005aa110
lea ecx, [ebp + 0x10]
mov byte [ebp - 4], 0x2a
call fcn.00602ad6
jmp 0x5b8450
lea edx, [ebp - 0x8c]
push edx
call fcn.004473e0
add esp, 4
lea ecx, [ebp - 0x8c]
call fcn.00402400
push eax
call fcn.005e639f
mov edi, eax
mov esi, 0x103
sub esi, edi
add esp, 4
cmp esi, 0x100
jbe 0x5b847a
mov esi, 0x100
lea ecx, [ebp - 0x20]
call fcn.00402400
push eax
call fcn.005e639f
add esp, 4
cmp eax, esi
jbe 0x5b84dd
lea ecx, [ebp - 0x20]
call fcn.00402400
push eax
call fcn.005e639f
mov ebx, eax
add esp, 4
lea ecx, [ebp - 0x20]
sub ebx, esi
call fcn.00402400
lea eax, [eax + ebx*2]
lea ecx, [ebp - 0xa4]
push eax
call fcn.0040e5a0
mov ecx, dword [ebp - 0xa4]
mov byte [ebp - 4], 0x2c
push ecx
lea ecx, [ebp - 0x20]
call fcn.00402410
lea ecx, [ebp - 0xa4]
mov byte [ebp - 4], 0x2a
call fcn.00401070
lea ecx, [ebp - 0x8c]
call fcn.00402400
cmp word [eax + edi*2 - 2], 0x5c
mov esi, 0x6d0c3c
je 0x5b84fa
mov esi, 0x6a015c
lea ecx, [ebp - 0x20]
call fcn.00402400
push eax
push esi
lea ecx, [ebp - 0x8c]
call fcn.00402400
mov ecx, dword [ebp + 0xc]
push eax
push 0x6a0c34
call fcn.00441ce0
lea ecx, [ebp - 0x8c]
mov byte [ebp - 4], 2
call fcn.00401070
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], 1
call fcn.00401070
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 0
call fcn.00401070
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret 0xc