Function at 0x41f5da
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
push 0
sub esp, 0x1c
mov eax, dword [0x42229c]
cmp eax, 0
jle 0x41f614
push 0
mov eax, dword [ebp + 8]
mov eax, dword [eax]
and eax, 0xff
push eax
push 2
push 0
push 0x426646
push 6
push 0x18
lea esi, [esp + 4]
push esi
push 2
call fcn.0040ebd9
xor eax, eax
mov dword [ebp - 0x20], 0
mov eax, dword [ebp + 0x10]
xor al, 1
cmp eax, 0
je 0x41f78d
mov eax, dword [ebp + 8]
add eax, 0x10
mov dword [ebp - 8], eax
mov eax, dword [ebp - 8]
mov edx, dword [ebp + 0xc]
cmp eax, edx
jae 0x41f655
mov eax, dword [ebp - 8]
mov eax, dword [eax]
and eax, 0xff
cmp eax, 0xa
jne 0x41f655
jmp 0x41f659
xor eax, eax
jmp 0x41f65c
xor eax, eax
inc eax
cmp eax, 0
je 0x41f765
push dword [ebp - 8]
call fcn.00417a92
mov dword [ebp - 0xc], eax
mov eax, dword [ebp - 0xc]
mov eax, dword [eax]
and eax, 0xff
cmp eax, 0x12
jne 0x41f765
mov eax, dword [ebp - 8]
mov edx, dword [ebp + 8]
cmp eax, edx
jne 0x41f6b6
mov eax, dword [0x42229c]
cmp eax, 0
jle 0x41f6a7
push 0x426664
call fcn.0041e410
xor eax, eax
inc eax
mov dword [ebp - 0x20], 1
jmp 0x41f765
mov eax, dword [ebp + 8]
mov eax, dword [eax]
and eax, 0xff
cmp eax, 0xa
jne 0x41f6d2
push dword [ebp + 8]
call fcn.00417a92
mov dword [ebp - 0x10], eax
mov eax, dword [ebp + 8]
mov eax, dword [eax]
and eax, 0xff
cmp eax, 0xa
jne 0x41f735
mov eax, dword [ebp - 0x10]
mov eax, dword [eax]
and eax, 0xff
cmp eax, 0x11
je 0x41f71a
mov eax, dword [ebp - 0x10]
mov eax, dword [eax]
and eax, 0xff
cmp eax, 0x10
je 0x41f71a
mov eax, dword [ebp - 0x10]
mov eax, dword [eax]
and eax, 0xff
cmp eax, 0x13
je 0x41f71a
xor eax, eax
jmp 0x41f71d
xor eax, eax
inc eax
cmp eax, 0
je 0x41f735
push dword [ebp - 0x10]
call fcn.0041e47f
cmp eax, 0
je 0x41f735
jmp 0x41f739
xor eax, eax
jmp 0x41f73c
xor eax, eax
inc eax
xor al, 1
cmp eax, 0
je 0x41f765
mov eax, dword [0x42229c]
cmp eax, 0
jle 0x41f75b
push 0x426674
call fcn.0041e410
xor eax, eax
inc eax
mov dword [ebp - 0x20], 1
mov eax, dword [ebp - 0x20]
cmp eax, 0
je 0x41f78d
mov eax, dword [ebp + 8]
add eax, 0x10
push eax
call fcn.0041e06b
xor eax, eax
inc eax
mov dword [ebp + 0x14], 1
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x18], eax
mov eax, dword [ebp + 8]
mov eax, dword [eax]
and eax, 0xff
cmp eax, 0x18
je 0x41f826
cmp eax, 0xb
je 0x41f85c
cmp eax, 0x16
je 0x41f8e6
cmp eax, 0xd
je 0x41f926
cmp eax, 0xc
je 0x41f94a
cmp eax, 0xa
je 0x41f987
cmp eax, 0x14
je 0x41fbf1
cmp eax, 0x15
je 0x41fc18
cmp eax, 0x12
je 0x41fc3b
mov eax, dword [ebp + 0x14]
cmp eax, 0
je 0x41f80e
push dword [ebp + 8]
call fcn.0041e3d6
jmp 0x41f816
push dword [ebp + 8]
call fcn.0041e36a
mov eax, dword [ebp + 8]
add eax, 0x10
mov dword [ebp + 8], eax
jmp 0x41fc5d
push dword [ebp + 8]
call fcn.0041e06b
push dword [ebp + 8]
call fcn.0041fce5
mov eax, dword [ebp + 0x14]
cmp eax, 0
je 0x41f847
call fcn.0041e273
jmp 0x41f84c
call fcn.0041e2cd
mov eax, dword [ebp + 8]
add eax, 0x10
mov dword [ebp + 8], eax
jmp 0x41fc5d
push dword [ebp + 8]
call fcn.0041e06b
push dword [ebp + 8]
call fcn.00417fb8
mov eax, dword [ebp + 8]
add eax, 0x10
mov dword [ebp + 8], eax
xor eax, eax
inc eax
push eax
xor eax, eax
push eax
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.0041f5da
mov dword [ebp + 8], eax
call fcn.00418025
mov eax, dword [ebp + 0x14]
cmp eax, 0
je 0x41f8a2
call fcn.0041e273
jmp 0x41f8a7
call fcn.0041e2cd
mov eax, dword [0x42229c]
cmp eax, 0
jle 0x41f8e1
mov eax, dword [0x422250]
mov dword [ebp - 0xc], eax
push 0
mov eax, dword [ebp - 0xc]
mov eax, dword [eax]
and eax, 0xff
push eax
push 2
push 0
push 0x426684
push 6
push 0x18
lea esi, [esp + 4]
push esi
push 2
call fcn.0040ebd9
jmp 0x41fc5d
mov eax, dword [ebp + 8]
mov dword [ebp - 0xc], eax
mov eax, dword [ebp + 8]
add eax, 0x10
mov dword [ebp + 8], eax
xor eax, eax
inc eax
push eax
xor eax, eax
push eax
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.0041f5da
mov dword [ebp + 8], eax
xor eax, eax
inc eax
push eax
push dword [ebp + 0xc]
push dword [ebp + 8]
push dword [ebp - 0xc]
call fcn.0041f1f7
mov dword [ebp + 8], eax
jmp 0x41fc5d
call fcn.0041e381
push eax
push dword [ebp + 8]
call fcn.00417a92
push eax
call fcn.00410298
mov eax, dword [ebp + 8]
add eax, 0x10
mov dword [ebp + 8], eax
jmp 0x41fc5d
mov eax, dword [ebp + 0x14]
cmp eax, 0
je 0x41f961
push dword [ebp + 8]
call fcn.00417fb8
mov dword [ebp - 0x14], eax
jmp 0x41f96c
push dword [ebp + 8]
call fcn.0041e36a
mov dword [ebp - 0x14], eax
mov eax, 0xa
xchg edx, eax
mov eax, dword [ebp - 0x14]
mov dword [eax], edx
mov eax, dword [ebp + 8]
add eax, 0x10
mov dword [ebp + 8], eax
jmp 0x41fc5d
mov eax, dword [0x42229c]
cmp eax, 0
jle 0x41f9b2
push 0
push 0x4266a1
push 6
push 0xc
lea esi, [esp + 4]
push esi
push 1
call fcn.0040ebbd
push dword [ebp + 8]
call fcn.0041e445
push dword [ebp + 8]
call fcn.00417a92
mov dword [ebp - 0xc], eax
mov eax, 0
mov edx, dword [0x4222a4]
cmp eax, edx
jge 0x41fabf
mov eax, dword [ebp + 8]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
mov eax, dword [eax + 8]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
mov edx, dword [0x4220fc]
cmp eax, edx
jne 0x41fa2f
push dword [0x422250]
push dword [0x422118]
call fcn.00410298
push 0x80000000
call fcn.0041e2f2
mov eax, 1
leave
pop edi
cmp dword [ebp - 4], eax
jb 0x41fa0f
mov edx, eax
mov eax, dword [0x42201c]
mov dword [eax + 0x20], edx
cmp edi, 0
je 0x41fa2a
jmp edi
jmp 0x41fabf
mov eax, dword [ebp - 0x1c]
mov edx, dword [0x422100]
cmp eax, edx
jne 0x41faa5
mov eax, dword [ebp + 8]
add eax, 0x10
mov dword [ebp + 8], eax
mov eax, dword [ebp + 8]
mov edx, dword [ebp + 0xc]
cmp eax, edx
jb 0x41fa64
push dword [0x422250]
push dword [0x422118]
call fcn.00410298
jmp 0x41fa79
xor eax, eax
inc eax
push eax
xor eax, eax
push eax
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.0041f5da
mov dword [ebp + 8], eax
push 0x80000000
call fcn.0041e2f2
mov eax, 2
leave
pop edi
cmp dword [ebp - 4], eax
jb 0x41fa88
mov edx, eax
mov eax, dword [0x42201c]
mov dword [eax + 0x20], edx
cmp edi, 0
je 0x41faa3
jmp edi
jmp 0x41fabf
xor eax, eax
inc eax
je 0x41fab1
mov eax, 0
jmp 0x41fabf
call 0x41fab6
pop eax
push eax
push 0x64
call fcn.0040ec00
mov eax, dword [ebp + 8]
add eax, 0x10
mov dword [ebp + 8], eax
mov eax, dword [ebp - 0xc]
mov eax, dword [eax]
and eax, 0xff
cmp eax, 2
je 0x41fb84
cmp eax, 0xc
je 0x41fbbf
cmp eax, 0x13
je 0x41fbd7
cmp eax, 0x19
je 0x41fbd7
cmp eax, 0x10
je 0x41fbd7
cmp eax, 0x11
je 0x41fbd7
mov eax, dword [0x42229c]
cmp eax, 0
jle 0x41fb2c
push 0x4266c7
call fcn.0041e410
mov eax, dword [ebp + 0x14]
cmp eax, 0
je 0x41fb40
push dword [ebp - 0xc]
call fcn.0041e3d6
jmp 0x41fb48
push dword [ebp - 0xc]
call fcn.0041e36a
mov eax, dword [0x42229c]
cmp eax, 0
jle 0x41fb82
mov eax, dword [0x422250]
mov dword [ebp - 0xc], eax
push 0
mov eax, dword [ebp - 0xc]
mov eax, dword [eax]
and eax, 0xff
push eax
push 2
push 0
push 0x4266da
push 6
push 0x18
lea esi, [esp + 4]
push esi
push 2
call fcn.0040ebd9
jmp 0x41fbef
push 0
push 0x4266a9
push 6
push 0xc
lea esi, [esp + 4]
push esi
push 1
call fcn.0040ebd9
mov eax, dword [ebp + 0x14]
cmp eax, 0
je 0x41fbb2
push dword [0x422118]
call fcn.0041e3d6
jmp 0x41fbbd
push dword [0x422118]
call fcn.0041e36a
jmp 0x41fbef
push dword [ebp - 0xc]
call fcn.00417fb8
mov dword [ebp - 0x14], eax
mov eax, 0xa
xchg edx, eax
mov eax, dword [ebp - 0x14]
mov dword [eax], edx
jmp 0x41fbef
push 0
push 0
push dword [ebp + 0x14]
push dword [ebp + 0xc]
push dword [ebp + 8]
push dword [ebp - 0xc]
call fcn.0041f38b
mov dword [ebp + 8], eax
jmp 0x41fc5d
mov eax, dword [ebp + 8]
mov dword [ebp - 0xc], eax
mov eax, dword [ebp + 8]
add eax, 0x10
mov dword [ebp + 8], eax
xor eax, eax
push eax
push dword [ebp + 0xc]
push dword [ebp + 8]
push dword [ebp - 0xc]
call fcn.0041f1f7
mov dword [ebp + 8], eax
jmp 0x41fc5d
push dword [ebp + 8]
call fcn.0041e3d6
mov dword [ebp - 0xc], eax
mov eax, 0x14
xchg edx, eax
mov eax, dword [ebp - 0xc]
mov dword [eax], edx
mov eax, dword [ebp + 8]
add eax, 0x10
mov dword [ebp + 8], eax
jmp 0x41fc5d
push 0
push 0x4266f3
push 6
push 0xc
lea esi, [esp + 4]
push esi
push 1
call fcn.0040ebd9
push 0
call dword [sym.imp.MSVCRT.DLL_exit]
add esp, 4
mov eax, dword [ebp - 0x20]
cmp eax, 0
je 0x41fc9d
push dword [ebp + 0x14]
push dword [ebp + 0xc]
push dword [ebp + 8]
push dword [ebp - 0x18]
call fcn.0041e996
mov dword [ebp + 8], eax
mov eax, dword [ebp + 0x10]
xor al, 1
cmp eax, 0
je 0x41fc9d
mov eax, dword [ebp + 0x14]
cmp eax, 0
je 0x41fc98
call fcn.0041e273
jmp 0x41fc9d
call fcn.0041e2cd
mov eax, dword [ebp + 8]
leave
ret 0x10