Function at 0x401d9d
Capabilities:
Clear file content

Disassembly:
push ecx
or dword [0x421550], 0xffffffff
push ebx
push ebp
push esi
xor ebp, ebp
push edi
xor edi, edi
inc ebp
cmp byte [0x429792], 0
mov dword [esp + 0x10], edi
mov dword [0x42156c], edi
mov dword [0x421568], edi
mov dword [0x421570], edi
mov dword [0x421650], ebp
jne 0x401ead
call fcn.004047ff
test eax, eax
je 0x401e19
push ebp
mov esi, 0x421a7c
push esi
mov ebx, 0x42167c
push ebx
call fcn.00403daa
call fcn.004047ff
test eax, eax
je 0x401e19
push esi
push ebx
push 0x42b0a4
push 0x42aca4
mov ecx, 0x42698c
call fcn.00401b43
push 0x34
pop eax
jmp 0x402166
cmp byte [0x429792], 0
jne 0x401ead
mov esi, dword [0x41092c]
mov ebx, dword [0x410928]
push edi
push 0x800
push esi
push ebx
call fcn.00401070
cmp edx, dword [0x410924]
jg 0x401ead
jl 0x401e51
cmp eax, dword [0x410920]
jae 0x401ead
cmp esi, edi
jl 0x401e7c
jg 0x401e5f
cmp ebx, 0x5f5e100
jbe 0x401e7c
mov ecx, dword [0x421578]
call fcn.0040388c
cmp edx, dword [0x410924]
jl 0x401ead
jg 0x401e7c
cmp eax, dword [0x410920]
jbe 0x401ead
push edi
push dword [0x410928]
push dword [0x421664]
call fcn.0040943e
push dword [0x421664]
call fcn.00403bd8
push eax
call dword [sym.imp.KERNEL32.dll_SetEndOfFile]
push edi
push edi
push dword [0x421664]
call fcn.0040943e
call fcn.0040401a
mov cx, word [0x4215b4]
movzx eax, cx
cmp eax, edi
je 0x401f3f
add eax, 0xfffffff8
cmp eax, ebp
ja 0x401ef6
xor eax, eax
cmp cx, 9
sete al
push eax
call fcn.00406d71
cmp eax, edi
je 0x402026
xor ecx, ecx
cmp eax, 3
sete cl
lea ecx, [ecx*4 + 2]
mov dword [esp + 0x10], ecx
jmp 0x402026
push 0x42227c
call fcn.0040c97f
push eax
push 0x6c
call fcn.0040926c
push eax
push 0x42b0a4
call fcn.0040a515
add esp, 0xc
call fcn.00403f92
cmp byte [0x429792], 0
jne 0x401f38
call fcn.0040d74d
push 0x421a7c
push 0x42167c
call fcn.00403ab1
mov eax, ebp
jmp 0x402166
mov esi, 0x41154c
mov dword [0x421678], edi
xor ebp, ebp
mov ebx, 0x10000
mov dword [0x421674], esi
add dword [0x421560], 0xffffffff
adc dword [0x421564], 0xffffffff
js 0x401f82
jg 0x401f72
cmp dword [0x421560], 0
jb 0x401f82
mov eax, dword [0x421558]
movzx eax, byte [eax]
inc dword [0x421558]
jmp 0x401f87
call fcn.00404272
cmp eax, 0xffffffff
je 0x402011
cmp dword [0x42164c], 0
jne 0x402011
mov ecx, dword [0x421674]
mov byte [ecx], al
inc dword [0x421674]
inc dword [0x421678]
cmp dword [0x421678], ebx
jne 0x401f57
push dword [0x421584]
mov eax, dword [0x411548]
push dword [0x421580]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
add edi, ebx
adc ebp, 0
add ecx, edi
adc eax, ebp
push eax
push ecx
push dword [0x41092c]
push dword [0x410928]
push ebp
push edi
call fcn.0040a572
call fcn.00409acd
cmp byte [0x42584a], 0
jne 0x402011
push 0
push dword [0x421678]
push esi
call fcn.00404906
and dword [0x421678], 0
jmp 0x401f51
mov eax, dword [0x421678]
test eax, eax
je 0x402023
push 0
push eax
push esi
call fcn.00404906
xor ebp, ebp
inc ebp
mov cl, byte [0x429792]
xor bl, bl
cmp byte [0x42584a], bl
je 0x40203c
test cl, cl
jne 0x40203c
inc bl
mov eax, dword [0x42164c]
mov esi, 0x42b0a4
test eax, eax
je 0x402085
cmp eax, ebp
jle 0x402081
cmp byte [0x429730], 0
jne 0x40205d
test cl, cl
jne 0x40205d
mov bl, 1
push 0x421a7c
push 0x42167c
push esi
push 0x42aca4
mov ecx, 0x42698c
call fcn.00401c0c
mov dword [esp + 0x10], 0x32
jmp 0x402096
mov dword [esp + 0x10], ebp
cmp dword [esp + 0x10], 6
jne 0x402096
mov ecx, 0x42698c
call fcn.0040190c
cmp byte [0x422705], 0
je 0x4020a8
cmp byte [0x422706], 0
je 0x4020b7
mov eax, dword [0x421550]
not eax
cmp eax, dword [0x4215bc]
jne 0x4020c2
cmp byte [0x429792], 0
je 0x402123
jmp 0x40211a
cmp dword [esp + 0x10], ebp
push 2
pop edi
jle 0x4020d1
cmp dword [esp + 0x10], edi
jne 0x402102
mov eax, dword [0x411548]
test byte [eax + 0x28], 1
push 0x42227c
je 0x4020eb
call fcn.0040c97f
push eax
push 0x70
jmp 0x4020f3
call fcn.0040c97f
push eax
push 0x71
call fcn.0040926c
push eax
push esi
call fcn.0040a515
add esp, 0xc
cmp byte [0x429730], 0
jne 0x402116
cmp byte [0x429792], 0
jne 0x402116
mov bl, 1
mov dword [esp + 0x10], edi
cmp byte [0x429792], 0
jne 0x40214a
cmp dword [esp + 0x10], 0
je 0x40213c
push dword [0x421664]
call fcn.00403bd8
push eax
call dword [sym.imp.KERNEL32.dll_SetEndOfFile]
cmp byte [0x429792], 0
jne 0x40214a
call fcn.0040d74d
test bl, bl
je 0x40215d
push 0x421a7c
push 0x42167c
call fcn.00403ab1
call fcn.00403f92
mov eax, dword [esp + 0x10]
pop edi
pop esi
pop ebp
pop ebx
pop ecx
ret