Function at 0x1001b521
Capabilities:
Clear file content

Disassembly:
mov eax, 0x1005fb88
call fcn.1005ebe8
sub esp, 0x5c
cmp byte [ebp + 0x28], 0
push ebx
push esi
push edi
mov dword [ebp - 0x10], esp
mov edi, edx
mov esi, ecx
je 0x1001b870
xor ebx, ebx
cmp byte [ebp + 0x1c], bl
je 0x1001b58c
mov esi, dword [ebp + 0x2c]
mov dword [esi], 2
jmp 0x1001b577
mov ecx, dword [esi]
mov eax, dword [edi]
cmp dword [eax + ecx*4], ebx
jne 0x1001b57b
push ecx
push esi
push dword [ebp + 0x14]
mov edx, 0x5e99
push ecx
push ecx
push 1
mov ecx, edi
call fcn.10018240
add esp, 0x18
dec dword [esi]
cmp dword [esi], ebx
jge 0x1001b554
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret
mov dword [ebp - 0x14], 5
mov dword [ebp - 0x24], 0x49a2f381
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x1c], 0xdf29855e
push 2
mov dword [ebp - 0x1c], 0x1e60e779
mov dword [ebp - 0x1c], ebx
pop edi
jmp 0x1001b5c1
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x3c], 0x998ab545
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], edi
jl 0x1001b5b3
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x3c], eax
test eax, eax
je 0x1001b5e0
cmp dword [ebp - 0x14], ebx
je 0x1001b5e0
xor eax, eax
inc eax
jmp 0x1001b5e2
mov eax, ebx
mov ecx, 0x8a9017ca
cmp ecx, eax
sbb eax, eax
xor edx, edx
inc eax
cmp eax, 8
setne dl
xor ecx, ecx
imul edx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x24]
cmp edx, eax
setle cl
mov dword [ebp - 0x1c], ecx
xor ecx, ecx
mov eax, dword [ebp - 0x14]
cmp eax, 0x3ca955a
setge cl
mov dword [ebp - 0x1c], ecx
mov eax, dword [ebp - 0x1c]
sub eax, 9
je 0x1001b627
cmp dword [ebp - 0x3c], ebx
je 0x1001b627
xor eax, eax
inc eax
jmp 0x1001b629
mov eax, ebx
neg eax
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp + 0x24]
movzx eax, word [eax]
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], 0x3843
mov dword [ebp - 0x14], 0x145c1747
mov dword [ebp - 0x24], 0xffffffff
mov dword [ebp - 0x14], ebx
jmp 0x1001b65f
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x44], 0xffffffff
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jl 0x1001b651
mov dword [ebp - 0x14], ebx
jmp 0x1001b673
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x34], ebx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jl 0x1001b669
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
mov eax, dword [ebp - 0x1c]
mov esi, ebx
cmp eax, 0xfffffffb
setl cl
sub ecx, dword [ebp - 0x1c]
neg ecx
sbb ecx, ecx
inc ecx
mov dword [ebp - 0x14], ecx
mov ecx, 0xcecb4571
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x14]
cmp ecx, eax
mov eax, dword [ebp - 0x1c]
sbb edx, edx
xor ecx, ecx
neg edx
cmp edx, eax
setle cl
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x14], 0x86e871d9
mov dword [ebp - 0x1c], 0xbd3aeb59
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x24], 0xe6e40424
mov dword [ebp - 0x1c], ebx
jmp 0x1001b6eb
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x50], 0xd927f7b6
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 3
jl 0x1001b6dd
mov eax, dword [ebp - 0x14]
xor edx, edx
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x48], eax
mov eax, dword [ebp - 0x48]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x48]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x48]
mov ecx, dword [ebp - 0x14]
add eax, 0xfffffffc
imul ecx, eax
add ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
cmp ecx, eax
mov eax, dword [ebp - 0x14]
setge dl
xor ecx, ecx
cmp eax, 0xff55
setne cl
xor eax, eax
push ecx
push 0x3442
push 0x79a5
cmp ecx, edx
mov edx, 0x1952
push 0x504d
setle al
mov ecx, 0x2e6a
push ebx
push 0x6523
mov dword [ebp - 0x24], eax
call fcn.10017207
mov cl, byte [ebp + esi - 0x20]
add esp, 0x18
mov dl, 3
call fcn.10020191
mov byte [ebp + esi - 0x20], al
inc esi
cmp esi, edi
jb 0x1001b6c0
push 4
lea ecx, [ebp - 0x68]
call fcn.10001d0c
push 1
lea ecx, [ebp - 0x5c]
mov dword [ebp - 4], ebx
call fcn.10001d0c
lea eax, [ebp - 0x68]
mov byte [ebp - 4], 1
push eax
push 1
push 0x7565
lea eax, [ebp - 0x18]
mov edx, 0x74b
push eax
push ebx
mov cl, 1
call fcn.1001a7a2
push 0x3447
push 0x10f4
push ebx
push 0x4688
lea eax, [ebp - 0x5c]
mov edx, 0x6747
push eax
push 0x6b4f
push 1
push ebx
push 0x62fa
push 0x43ff
push 0x1c7f
push 0x7dad
push 0x78df
lea ecx, [ebp - 0x18]
call fcn.100177a7
add esp, 0x48
mov dword [ebp - 0x18], ebx
jmp 0x1001b80e
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x2c], 0x4b25b3b
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edi
jl 0x1001b800
lea eax, [ebp - 0x5c]
push eax
push ecx
push ebx
lea edx, [ebp - 0x68]
mov ecx, 0x6dd2
call fcn.10017488
add esp, 0xc
mov dword [ebp - 0x28], ebx
jmp 0x1001b84b
lea eax, [ebp + 0x2b]
mov byte [ebp + 0x2b], bl
push eax
push 0x4032
push ebx
mov edx, 0x6fab
call fcn.1001a6fd
add esp, 0xc
dec dword [ebp - 0x28]
cmp dword [ebp - 0x28], 0xfffffff1
jle 0x1001b82e
lea ecx, [ebp - 0x5c]
call fcn.10001d69
lea ecx, [ebp - 0x68]
call fcn.10001d69
mov ecx, dword [ebp + 8]
mov ax, word [ebp - 0x20]
mov word [ecx], ax
jmp 0x1001b57b
cmp byte [ebp + 0x20], 0
je 0x1001b898
mov edx, dword [ebp + 0xc]
mov dword [edx], 0
jmp 0x1001b88e
mov ecx, dword [edx]
mov eax, dword [esi]
mov dword [eax + ecx*4], 1
inc dword [edx]
cmp dword [edx], 1
jl 0x1001b881
jmp 0x1001b57b
mov dword [ebp - 0x24], 0x102d
xor ebx, ebx
cmp dword [ebp - 0x24], 0x133b
jle 0x1001b8da
push ebx
call dword [sym.imp.KERNEL32.dll_SetEndOfFile]
mov esi, ebx
mov edi, ebx
mov ecx, edi
mov eax, esi
sar eax, cl
mov ecx, 0x1007ad38
cdq
push edx
push eax
call fcn.10001b82
inc edi
cmp edi, 0x36cb
jl 0x1001b8b5
inc esi
cmp esi, 0x6a92
jl 0x1001b8b3
mov esi, dword [ebp + 0x18]
mov dword [esi], ebx
cmp dword [esi], 3
jg 0x1001b913
mov edi, dword [ebp + 0x30]
mov edx, dword [ebp + 0x10]
mov ecx, dword [edi]
mov eax, dword [edx]
cmp dword [eax + ecx*4], ebx
jne 0x1001b913
push edi
push ecx
push 0x9d2
push edx
push 0x5ad8
push ecx
push ecx
xor dl, dl
call fcn.100179d0
add esp, 0x1c
inc dword [esi]
cmp dword [esi], 3
jle 0x1001b8e7
mov dword [ebp - 4], 2
cmp dword [ebp - 0x24], 0xd7d
jge 0x1001b57b
mov edx, str.cxhgoktxw_ubcjsh_hsldm_hxbmfbqv_ylolby_iruto_nvhzprab_wve_twka_cutjthl_zeevx_tzsmuesn_zyzkjccxf
mov ecx, 0x1007ad38
call fcn.10003a0a
jmp 0x1001b57b