Function at 0x10033d9
Capabilities:
Parse pe header
Terminate process

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x20
mov edx, dword [ebp + 8]
mov eax, dword [0x1005118]
cmp edx, eax
mov ecx, dword [0x100511c]
push edi
mov edi, dword [ebp + 0xc]
jne 0x10031f8
cmp edi, ecx
je 0x1003417
cmp dword [0x1005144], 0
push ebx
push esi
mov ebx, eax
mov esi, ecx
mov dword [0x1005118], edx
mov dword [0x100511c], edi
je 0x1003397
cmp dword [ebp + 8], 0
mov edx, dword [0x1005334]
mov eax, dword [0x1005338]
jle 0x100323e
test edi, edi
jle 0x100323e
cmp dword [ebp + 8], edx
jg 0x100323e
cmp edi, eax
jg 0x100323e
mov dword [ebp - 0x18], 1
jmp 0x1003242
and dword [ebp - 0x18], 0
test ebx, ebx
jle 0x100325b
test esi, esi
jle 0x100325b
cmp ebx, edx
jg 0x100325b
cmp esi, eax
jg 0x100325b
mov dword [ebp - 0x14], 1
jmp 0x100325f
and dword [ebp - 0x14], 0
lea ecx, [esi - 1]
cmp ecx, 1
mov dword [ebp - 0xc], ecx
jg 0x1003271
mov dword [ebp - 0xc], 1
lea ecx, [esi + 1]
cmp ecx, eax
mov dword [ebp - 4], ecx
jl 0x100327e
mov dword [ebp - 4], eax
xor esi, esi
lea ecx, [edi - 1]
inc esi
cmp ecx, esi
mov dword [ebp - 0x1c], ecx
jg 0x100328e
mov dword [ebp - 0x1c], esi
lea ecx, [edi + 1]
cmp ecx, eax
mov dword [ebp - 8], ecx
jl 0x100329b
mov dword [ebp - 8], eax
lea eax, [ebx - 1]
cmp eax, esi
mov dword [ebp - 0x10], eax
jg 0x10032a8
mov dword [ebp - 0x10], esi
lea eax, [ebx + 1]
cmp eax, edx
mov dword [ebp + 0xc], eax
jl 0x10032b5
mov dword [ebp + 0xc], edx
mov ecx, dword [ebp + 8]
lea eax, [ecx - 1]
cmp eax, esi
mov dword [ebp - 0x20], eax
jg 0x10032c5
mov dword [ebp - 0x20], esi
lea eax, [ecx + 1]
cmp eax, edx
mov dword [ebp + 8], eax
jl 0x10032d2
mov dword [ebp + 8], edx
cmp dword [ebp - 0x14], 0
je 0x1003311
mov ebx, dword [ebp - 0xc]
cmp ebx, dword [ebp - 4]
jg 0x1003311
mov esi, ebx
shl esi, 5
add esi, 0x1005340
mov edi, dword [ebp - 0x10]
mov eax, edi
cmp eax, dword [ebp + 0xc]
jg 0x1003308
test byte [esi + edi], 0x40
jne 0x1003302
push ebx
push edi
call fcn.010031a0
inc edi
cmp edi, dword [ebp + 0xc]
jle 0x10032f5
inc ebx
add esi, 0x20
cmp ebx, dword [ebp - 4]
jle 0x10032eb
cmp dword [ebp - 0x18], 0
je 0x100334b
mov esi, dword [ebp - 0x1c]
cmp esi, dword [ebp - 8]
mov ebx, esi
jg 0x100334b
shl esi, 5
add esi, 0x1005340
mov edi, dword [ebp - 0x20]
jmp 0x100333d
test byte [esi + edi], 0x40
jne 0x100333c
push ebx
push edi
call fcn.0100316b
inc edi
cmp edi, dword [ebp + 8]
jle 0x100332f
inc ebx
add esi, 0x20
cmp ebx, dword [ebp - 8]
jle 0x100332a
cmp dword [ebp - 0x14], 0
je 0x100336e
mov edi, dword [ebp - 0xc]
jmp 0x1003369
mov esi, dword [ebp - 0x10]
jmp 0x1003363
push edi
push esi
call fcn.01002646
inc esi
cmp esi, dword [ebp + 0xc]
jle 0x100335b
inc edi
cmp edi, dword [ebp - 4]
jle 0x1003356
cmp dword [ebp - 0x18], 0
je 0x1003415
mov edi, dword [ebp - 0x1c]
jmp 0x1003390
mov esi, dword [ebp - 0x20]
jmp 0x100338a
push edi
push esi
call fcn.01002646
inc esi
cmp esi, dword [ebp + 8]
jle 0x1003382
inc edi
cmp edi, dword [ebp - 8]
jle 0x100337d
jmp 0x1003415
test ebx, ebx
jle 0x10033cf
test esi, esi
jle 0x10033cf
cmp ebx, dword [0x1005334]
jg 0x10033cf
cmp esi, dword [0x1005338]
jg 0x10033cf
mov eax, esi
shl eax, 5
test byte [eax + ebx + 0x1005340], 0x40
jne 0x10033cf
push esi
push ebx
call fcn.010031a0
push esi
push ebx
call fcn.01002646
mov edx, dword [ebp + 8]
test edx, edx
jle 0x1003415
test edi, edi
jle 0x1003415
cmp edx, dword [0x1005334]
jg 0x1003415
cmp edi, dword [0x1005338]
jg 0x1003415
shl edi, 5
mov al, byte [edi + edx + 0x1005340]
test al, 0x40
jne 0x1003415
and al, 0x1f
cmp al, 0xe
je 0x1003415
mov edi, dword [0x100511c]
mov esi, dword [0x1005118]
push edi
push esi
call fcn.0100316b
push edi
push esi
call fcn.01002646
pop esi
pop ebx
pop edi
leave
ret 8