Function at 0x401000
Capabilities:
Encode data using xor

Disassembly:
push 0xffffffffffffffff
push 0x41ad18
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x14
mov al, byte [esp + 0x24]
push ebx
mov byte [esp + 8], al
xor ecx, ecx
xor eax, eax
xor edx, edx
push esi
push edi
mov dword [esp + 0x14], ecx
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], edx
mov esi, dword [0x424024]
mov dword [esp + 0x28], edx
lea ebx, [esi + 0x424028]
mov esi, ebx
sub esi, 0x424028
je 0x4010df
test esi, esi
mov eax, esi
jge 0x40105b
xor eax, eax
push eax
call sub.MSVCRT.dll_void____cdecl_operator_new_unsigned_int_
mov ecx, dword [esp + 0x18]
add esp, 4
mov edi, eax
push edi
push 0
push ecx
lea ecx, [esp + 0x1c]
call fcn.00402010
push eax
push ebx
push 0x424028
lea ecx, [esp + 0x1c]
call fcn.00402010
mov edx, dword [esp + 0x18]
push eax
push edx
push 0
lea ecx, [esp + 0x1c]
call fcn.00402010
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
push eax
push ecx
lea ecx, [esp + 0x18]
call fcn.00402000
mov edx, dword [esp + 0x14]
push edx
call sub.MSVCRT.dll_void___cdecl_operator_delete_void__
mov ecx, dword [esp + 0x18]
add esp, 4
lea edx, [edi + esi]
test ecx, ecx
mov dword [esp + 0x1c], edx
jne 0x4010cb
xor eax, eax
jmp 0x4010d1
mov eax, dword [esp + 0x18]
sub eax, ecx
add eax, edi
mov ecx, edi
add eax, esi
mov dword [esp + 0x14], ecx
mov dword [esp + 0x18], eax
mov esi, dword [0x43d028]
sub edx, eax
push ebp
mov edi, eax
lea ebx, [esi + 0x43d02c]
mov esi, ebx
mov dword [esp + 0x10], ebx
sub esi, 0x43d02c
cmp edx, esi
jae 0x4011bd
test ecx, ecx
je 0x401110
mov edx, eax
sub edx, ecx
cmp esi, edx
jb 0x401112
mov edx, esi
test ecx, ecx
jne 0x40111a
xor eax, eax
jmp 0x40111c
sub eax, ecx
lea ebp, [eax + edx]
test ebp, ebp
mov eax, ebp
jge 0x401127
xor eax, eax
push eax
call sub.MSVCRT.dll_void____cdecl_operator_new_unsigned_int_
add esp, 4
mov ebx, eax
mov eax, dword [esp + 0x18]
lea ecx, [esp + 0x14]
push ebx
push edi
push eax
call fcn.00402010
mov ecx, dword [esp + 0x10]
push eax
push ecx
push 0x43d02c
lea ecx, [esp + 0x20]
call fcn.00402010
mov edx, dword [esp + 0x1c]
push eax
push edx
push edi
lea ecx, [esp + 0x20]
call fcn.00402010
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x18]
push eax
push ecx
lea ecx, [esp + 0x1c]
call fcn.00402000
mov edx, dword [esp + 0x18]
push edx
call sub.MSVCRT.dll_void___cdecl_operator_delete_void__
mov ecx, dword [esp + 0x1c]
add esp, 4
lea eax, [ebx + ebp]
test ecx, ecx
mov dword [esp + 0x20], eax
jne 0x4011a7
xor eax, eax
mov ecx, ebx
mov eax, ebx
mov dword [esp + 0x18], ecx
add eax, esi
mov dword [esp + 0x1c], eax
jmp 0x401220
mov eax, dword [esp + 0x1c]
sub eax, ecx
mov ecx, ebx
add eax, ebx
mov dword [esp + 0x18], ecx
add eax, esi
mov dword [esp + 0x1c], eax
jmp 0x401220
test esi, esi
jbe 0x401220
lea ecx, [eax + esi]
push ecx
push eax
push eax
lea ecx, [esp + 0x20]
call fcn.00402010
mov eax, dword [esp + 0x1c]
lea ecx, [esp + 0x14]
push eax
sub eax, edi
add eax, 0x43d02c
push ebx
push eax
call fcn.00402010
mov edx, dword [esp + 0x1c]
push edi
sub edx, edi
add edx, 0x43d02c
push edx
jmp 0x401205
push 0x43d02c
call fcn.00402040
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x24]
add esp, 0xc
add eax, esi
mov dword [esp + 0x1c], eax
mov edx, dword [0x45602c]
mov edi, eax
lea ebx, [edx + 0x456030]
mov edx, dword [esp + 0x20]
mov esi, ebx
sub edx, eax
sub esi, 0x456030
mov dword [esp + 0x10], ebx
cmp edx, esi
jae 0x401301
test ecx, ecx
je 0x401254
mov edx, eax
sub edx, ecx
cmp esi, edx
jb 0x401256
mov edx, esi
test ecx, ecx
jne 0x40125e
xor eax, eax
jmp 0x401260
sub eax, ecx
lea ebp, [eax + edx]
test ebp, ebp
mov eax, ebp
jge 0x40126b
xor eax, eax
push eax
call sub.MSVCRT.dll_void____cdecl_operator_new_unsigned_int_
add esp, 4
mov ebx, eax
mov eax, dword [esp + 0x18]
lea ecx, [esp + 0x14]
push ebx
push edi
push eax
call fcn.00402010
mov ecx, dword [esp + 0x10]
push eax
push ecx
push 0x456030
lea ecx, [esp + 0x20]
call fcn.00402010
mov edx, dword [esp + 0x1c]
push eax
push edx
push edi
lea ecx, [esp + 0x20]
call fcn.00402010
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x18]
push eax
push ecx
lea ecx, [esp + 0x1c]
call fcn.00402000
mov edx, dword [esp + 0x18]
push edx
call sub.MSVCRT.dll_void___cdecl_operator_delete_void__
mov ecx, dword [esp + 0x1c]
add esp, 4
lea eax, [ebx + ebp]
test ecx, ecx
mov dword [esp + 0x20], eax
jne 0x4012eb
xor eax, eax
mov ecx, ebx
mov eax, ebx
mov dword [esp + 0x18], ecx
add eax, esi
mov dword [esp + 0x1c], eax
jmp 0x401364
mov eax, dword [esp + 0x1c]
sub eax, ecx
mov ecx, ebx
add eax, ebx
mov dword [esp + 0x18], ecx
add eax, esi
mov dword [esp + 0x1c], eax
jmp 0x401364
test esi, esi
jbe 0x401364
lea ecx, [eax + esi]
push ecx
push eax
push eax
lea ecx, [esp + 0x20]
call fcn.00402010
mov eax, dword [esp + 0x1c]
lea ecx, [esp + 0x14]
push eax
sub eax, edi
add eax, 0x456030
push ebx
push eax
call fcn.00402010
mov edx, dword [esp + 0x1c]
push edi
sub edx, edi
add edx, 0x456030
push edx
jmp 0x401349
push 0x456030
call fcn.00402040
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x24]
add esp, 0xc
add eax, esi
mov dword [esp + 0x1c], eax
mov edx, dword [0x46f030]
mov edi, eax
lea ebx, [edx + 0x46f034]
mov edx, dword [esp + 0x20]
mov esi, ebx
sub edx, eax
sub esi, 0x46f034
mov dword [esp + 0x10], ebx
cmp edx, esi
jae 0x401447
test ecx, ecx
je 0x401398
mov edx, eax
sub edx, ecx
cmp esi, edx
jb 0x40139a
mov edx, esi
test ecx, ecx
jne 0x4013a2
xor eax, eax
jmp 0x4013a4
sub eax, ecx
lea ebp, [edx + eax]
test ebp, ebp
mov eax, ebp
jge 0x4013af
xor eax, eax
push eax
call sub.MSVCRT.dll_void____cdecl_operator_new_unsigned_int_
add esp, 4
mov ebx, eax
mov eax, dword [esp + 0x18]
lea ecx, [esp + 0x14]
push ebx
push edi
push eax
call fcn.00402010
mov ecx, dword [esp + 0x10]
push eax
push ecx
push 0x46f034
lea ecx, [esp + 0x20]
call fcn.00402010
mov edx, dword [esp + 0x1c]
push eax
push edx
push edi
lea ecx, [esp + 0x20]
call fcn.00402010
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x18]
push eax
push ecx
lea ecx, [esp + 0x1c]
call fcn.00402000
mov edx, dword [esp + 0x18]
push edx
call sub.MSVCRT.dll_void___cdecl_operator_delete_void__
lea eax, [ebx + ebp]
add esp, 4
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x18]
test eax, eax
jne 0x401430
xor ecx, ecx
lea eax, [ebx + esi]
add eax, ecx
mov ecx, ebx
mov dword [esp + 0x1c], eax
mov dword [esp + 0x18], ecx
jmp 0x4014aa
mov ecx, dword [esp + 0x1c]
sub ecx, eax
lea eax, [ebx + esi]
add eax, ecx
mov ecx, ebx
mov dword [esp + 0x1c], eax
mov dword [esp + 0x18], ecx
jmp 0x4014aa
test esi, esi
jbe 0x4014aa
lea ecx, [eax + esi]
push ecx
push eax
push eax
lea ecx, [esp + 0x20]
call fcn.00402010
mov eax, dword [esp + 0x1c]
lea ecx, [esp + 0x14]
push eax
sub eax, edi
add eax, 0x46f034
push ebx
push eax
call fcn.00402010
mov edx, dword [esp + 0x1c]
push edi
sub edx, edi
add edx, 0x46f034
push edx
jmp 0x40148f
push 0x46f034
call fcn.00402040
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x24]
add esp, 0xc
add eax, esi
mov dword [esp + 0x1c], eax
mov edx, dword [0x488034]
mov edi, eax
lea ebx, [edx + 0x488038]
mov edx, dword [esp + 0x20]
mov esi, ebx
sub edx, eax
sub esi, 0x488038
mov dword [esp + 0x10], ebx
cmp edx, esi
jae 0x40158d
test ecx, ecx
je 0x4014de
mov edx, eax
sub edx, ecx
cmp esi, edx
jb 0x4014e0
mov edx, esi
test ecx, ecx
jne 0x4014e8
xor eax, eax
jmp 0x4014ea
sub eax, ecx
lea ebp, [eax + edx]
test ebp, ebp
mov eax, ebp
jge 0x4014f5
xor eax, eax
push eax
call sub.MSVCRT.dll_void____cdecl_operator_new_unsigned_int_
add esp, 4
mov ebx, eax
mov eax, dword [esp + 0x18]
lea ecx, [esp + 0x14]
push ebx
push edi
push eax
call fcn.00402010
mov ecx, dword [esp + 0x10]
push eax
push ecx
push 0x488038
lea ecx, [esp + 0x20]
call fcn.00402010
mov edx, dword [esp + 0x1c]
push eax
push edx
push edi
lea ecx, [esp + 0x20]
call fcn.00402010
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x18]
push eax
push ecx
lea ecx, [esp + 0x1c]
call fcn.00402000
mov edx, dword [esp + 0x18]
push edx
call sub.MSVCRT.dll_void___cdecl_operator_delete_void__
lea eax, [ebx + ebp]
add esp, 4
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x18]
test eax, eax
jne 0x401576
xor ecx, ecx
lea eax, [ebx + esi]
add eax, ecx
mov ecx, ebx
mov dword [esp + 0x1c], eax
mov dword [esp + 0x18], ecx
jmp 0x4015f0
mov ecx, dword [esp + 0x1c]
sub ecx, eax
lea eax, [ebx + esi]
add eax, ecx
mov ecx, ebx
mov dword [esp + 0x1c], eax
mov dword [esp + 0x18], ecx
jmp 0x4015f0
test esi, esi
jbe 0x4015f0
lea ecx, [eax + esi]
push ecx
push eax
push eax
lea ecx, [esp + 0x20]
call fcn.00402010
mov eax, dword [esp + 0x1c]
lea ecx, [esp + 0x14]
push eax
sub eax, edi
add eax, 0x488038
push ebx
push eax
call fcn.00402010
mov edx, dword [esp + 0x1c]
push edi
sub edx, edi
add edx, 0x488038
push edx
jmp 0x4015d5
push 0x488038
call fcn.00402040
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x24]
add esp, 0xc
add eax, esi
mov dword [esp + 0x1c], eax
mov edx, dword [0x4a1038]
mov edi, eax
lea ebx, [edx + 0x4a103c]
mov edx, dword [esp + 0x20]
mov esi, ebx
sub edx, eax
sub esi, 0x4a103c
mov dword [esp + 0x10], ebx
cmp edx, esi
jae 0x4016d3
test ecx, ecx
je 0x401624
mov edx, eax
sub edx, ecx
cmp esi, edx
jb 0x401626
mov edx, esi
test ecx, ecx
jne 0x40162e
xor eax, eax
jmp 0x401630
sub eax, ecx
lea ebp, [eax + edx]
test ebp, ebp
mov eax, ebp
jge 0x40163b
xor eax, eax
push eax
call sub.MSVCRT.dll_void____cdecl_operator_new_unsigned_int_
add esp, 4
mov ebx, eax
mov eax, dword [esp + 0x18]
lea ecx, [esp + 0x14]
push ebx
push edi
push eax
call fcn.00402010
mov ecx, dword [esp + 0x10]
push eax
push ecx
push 0x4a103c
lea ecx, [esp + 0x20]
call fcn.00402010
mov edx, dword [esp + 0x1c]
push eax
push edx
push edi
lea ecx, [esp + 0x20]
call fcn.00402010
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x18]
push eax
push ecx
lea ecx, [esp + 0x1c]
call fcn.00402000
mov edx, dword [esp + 0x18]
push edx
call sub.MSVCRT.dll_void___cdecl_operator_delete_void__
lea eax, [ebx + ebp]
add esp, 4
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x18]
test eax, eax
jne 0x4016bc
xor ecx, ecx
lea eax, [ebx + esi]
add eax, ecx
mov ecx, ebx
mov dword [esp + 0x1c], eax
mov dword [esp + 0x18], ecx
jmp 0x401736
mov ecx, dword [esp + 0x1c]
sub ecx, eax
lea eax, [ebx + esi]
add eax, ecx
mov ecx, ebx
mov dword [esp + 0x1c], eax
mov dword [esp + 0x18], ecx
jmp 0x401736
test esi, esi
jbe 0x401736
lea ecx, [eax + esi]
push ecx
push eax
push eax
lea ecx, [esp + 0x20]
call fcn.00402010
mov eax, dword [esp + 0x1c]
lea ecx, [esp + 0x14]
push eax
sub eax, edi
add eax, 0x4a103c
push ebx
push eax
call fcn.00402010
mov edx, dword [esp + 0x1c]
push edi
sub edx, edi
add edx, 0x4a103c
push edx
jmp 0x40171b
push 0x4a103c
call fcn.00402040
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x24]
add esp, 0xc
add eax, esi
mov dword [esp + 0x1c], eax
mov edx, dword [0x4ba03c]
mov edi, eax
lea ebp, [edx + 0x4ba040]
mov edx, dword [esp + 0x20]
mov esi, ebp
sub edx, eax
sub esi, 0x4ba040
mov dword [esp + 0x10], ebp
cmp edx, esi
jae 0x401815
test ecx, ecx
je 0x40176a
mov edx, eax
sub edx, ecx
cmp esi, edx
jb 0x40176c
mov edx, esi
test ecx, ecx
jne 0x401774
xor eax, eax
jmp 0x401776
sub eax, ecx
lea ebp, [eax + edx]
test ebp, ebp
mov eax, ebp
jge 0x401781
xor eax, eax
push eax
call sub.MSVCRT.dll_void____cdecl_operator_new_unsigned_int_
add esp, 4
mov ebx, eax
mov eax, dword [esp + 0x18]
lea ecx, [esp + 0x14]
push ebx
push edi
push eax
call fcn.00402010
mov ecx, dword [esp + 0x10]
push eax
push ecx
push 0x4ba040
lea ecx, [esp + 0x20]
call fcn.00402010
mov edx, dword [esp + 0x1c]
push eax
push edx
push edi
lea ecx, [esp + 0x20]
call fcn.00402010
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x18]
push eax
push ecx
lea ecx, [esp + 0x1c]
call fcn.00402000
mov edx, dword [esp + 0x18]
push edx
call sub.MSVCRT.dll_void___cdecl_operator_delete_void__
lea eax, [ebx + ebp]
add esp, 4
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x18]
test eax, eax
jne 0x401800
xor ecx, ecx
lea eax, [ebx + esi]
add eax, ecx
mov dword [esp + 0x18], ebx
mov dword [esp + 0x1c], eax
jmp 0x401873
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x18], ebx
sub ecx, eax
lea eax, [ebx + esi]
add eax, ecx
mov dword [esp + 0x1c], eax
jmp 0x401873
test esi, esi
jbe 0x401873
lea ecx, [eax + esi]
push ecx
push eax
push eax
lea ecx, [esp + 0x20]
call fcn.00402010
mov eax, dword [esp + 0x1c]
lea ecx, [esp + 0x14]
push eax
sub eax, edi
add eax, 0x4ba040
push ebp
push eax
call fcn.00402010
mov edx, dword [esp + 0x1c]
push edi
sub edx, edi
add edx, 0x4ba040
push edx
jmp 0x40185c
push 0x4ba040
call fcn.00402040
mov eax, dword [esp + 0x28]
add esp, 0xc
add eax, esi
mov dword [esp + 0x1c], eax
mov ecx, dword [0x4d3040]
lea edx, [ecx + 0x4d3044]
lea ecx, [esp + 0x14]
push edx
push 0x4d3044
push eax
call fcn.00401e10
mov eax, dword [0x4ec044]
mov edx, dword [esp + 0x1c]
lea ecx, [eax + 0x4ec048]
push ecx
push 0x4ec048
push edx
lea ecx, [esp + 0x20]
call fcn.00401e10
mov eax, dword [0x505048]
mov edx, dword [esp + 0x1c]
lea ecx, [eax + 0x50504c]
push ecx
push 0x50504c
push edx
lea ecx, [esp + 0x20]
call fcn.00401e10
mov eax, dword [0x51e04c]
mov edx, dword [esp + 0x1c]
lea ecx, [eax + 0x51e050]
push ecx
push 0x51e050
push edx
lea ecx, [esp + 0x20]
call fcn.00401e10
mov eax, dword [0x537050]
mov edx, dword [esp + 0x1c]
lea ecx, [eax + 0x537054]
push ecx
push 0x537054
push edx
lea ecx, [esp + 0x20]
call fcn.00401e10
mov eax, dword [0x550054]
mov edx, dword [esp + 0x1c]
lea ecx, [eax + 0x550058]
push ecx
push 0x550058
push edx
lea ecx, [esp + 0x20]
call fcn.00401e10
mov eax, dword [0x569058]
mov edx, dword [esp + 0x1c]
lea ecx, [eax + 0x56905c]
push ecx
push 0x56905c
push edx
lea ecx, [esp + 0x20]
call fcn.00401e10
mov eax, dword [0x58205c]
mov edx, dword [esp + 0x1c]
lea ecx, [eax + 0x582060]
push ecx
push 0x582060
push edx
lea ecx, [esp + 0x20]
call fcn.00401e10
mov eax, dword [0x59b060]
mov edx, dword [esp + 0x1c]
lea ecx, [eax + 0x59b064]
push ecx
push 0x59b064
push edx
lea ecx, [esp + 0x20]
call fcn.00401e10
mov eax, dword [0x5b4064]
mov edx, dword [esp + 0x1c]
lea ecx, [eax + 0x5b4068]
push ecx
push 0x5b4068
push edx
lea ecx, [esp + 0x20]
call fcn.00401e10
mov eax, dword [0x5cd068]
lea ecx, [eax + 0x5cd06c]
mov edx, dword [esp + 0x1c]
push ecx
push 0x5cd06c
push edx
lea ecx, [esp + 0x20]
call fcn.00401e10
mov eax, dword [0x5e606c]
mov edx, dword [esp + 0x1c]
lea ecx, [eax + 0x5e6070]
push ecx
push 0x5e6070
push edx
lea ecx, [esp + 0x20]
call fcn.00401e10
mov eax, dword [0x5ff070]
mov edx, dword [esp + 0x1c]
lea ecx, [eax + 0x5ff074]
push ecx
push 0x5ff074
push edx
lea ecx, [esp + 0x20]
call fcn.00401e10
mov eax, dword [0x618074]
mov edx, dword [esp + 0x1c]
lea ecx, [eax + 0x618078]
push ecx
push 0x618078
push edx
lea ecx, [esp + 0x20]
call fcn.00401e10
mov eax, dword [0x631078]
mov edx, dword [esp + 0x1c]
lea ecx, [eax + 0x63107c]
push ecx
push 0x63107c
push edx
lea ecx, [esp + 0x20]
call fcn.00401e10
mov eax, dword [0x64a07c]
mov edx, dword [esp + 0x1c]
lea ecx, [eax + 0x64a080]
push ecx
push 0x64a080
push edx
lea ecx, [esp + 0x20]
call fcn.00401e10
mov eax, dword [0x663080]
mov edx, dword [esp + 0x1c]
lea ecx, [eax + 0x663084]
push ecx
push 0x663084
push edx
lea ecx, [esp + 0x20]
call fcn.00401e10
mov eax, dword [0x67c084]
mov edx, dword [esp + 0x1c]
lea ecx, [eax + 0x67c088]
push ecx
push 0x67c088
push edx
lea ecx, [esp + 0x20]
call fcn.00401e10
mov eax, dword [0x695088]
mov edx, dword [esp + 0x1c]
lea ecx, [eax + 0x69508c]
push ecx
push 0x69508c
push edx
lea ecx, [esp + 0x20]
call fcn.00401e10
mov eax, dword [0x6ae08c]
mov edx, dword [esp + 0x1c]
lea ecx, [eax + 0x6ae090]
push ecx
push 0x6ae090
push edx
lea ecx, [esp + 0x20]
call fcn.00401e10
mov eax, dword [0x6c7090]
lea ecx, [eax + 0x6c7094]
push ecx
mov edx, dword [esp + 0x20]
push 0x6c7094
push edx
lea ecx, [esp + 0x20]
call fcn.00401e10
mov eax, dword [0x6e0094]
mov edx, dword [esp + 0x1c]
lea ecx, [eax + 0x6e0098]
push ecx
push 0x6e0098
push edx
lea ecx, [esp + 0x20]
call fcn.00401e10
mov eax, dword [0x6f9098]
mov edx, dword [esp + 0x1c]
lea ecx, [eax + 0x6f909c]
push ecx
push 0x6f909c
push edx
lea ecx, [esp + 0x20]
call fcn.00401e10
mov eax, dword [0x71209c]
mov edx, dword [esp + 0x1c]
lea ecx, [eax + 0x7120a0]
push ecx
push 0x7120a0
push edx
lea ecx, [esp + 0x20]
call fcn.00401e10
mov eax, dword [0x72b0a0]
mov edx, dword [esp + 0x1c]
lea ecx, [eax + 0x72b0a4]
push ecx
push 0x72b0a4
push edx
lea ecx, [esp + 0x20]
call fcn.00401e10
mov eax, dword [0x7440a4]
mov edx, dword [esp + 0x1c]
lea ecx, [eax + 0x7440a8]
push ecx
push 0x7440a8
push edx
lea ecx, [esp + 0x20]
call fcn.00401e10
mov eax, dword [0x75d0a8]
mov edx, dword [esp + 0x1c]
lea ecx, [eax + 0x75d0ac]
push ecx
push 0x75d0ac
push edx
lea ecx, [esp + 0x20]
call fcn.00401e10
mov eax, dword [0x7760ac]
mov edx, dword [esp + 0x1c]
lea ecx, [eax + 0x7760b0]
push ecx
push 0x7760b0
push edx
lea ecx, [esp + 0x20]
call fcn.00401e10
mov eax, dword [0x78f0b0]
mov edx, dword [esp + 0x1c]
lea ecx, [eax + 0x78f0b4]
push ecx
push 0x78f0b4
push edx
lea ecx, [esp + 0x20]
call fcn.00401e10
mov eax, dword [0x7a80b4]
mov edx, dword [esp + 0x1c]
lea ecx, [eax + 0x7a80b8]
push ecx
push 0x7a80b8
push edx
lea ecx, [esp + 0x20]
call fcn.00401e10
mov eax, dword [0x7c10b8]
lea ecx, [eax + 0x7c10bc]
push ecx
push 0x7c10bc
mov edx, dword [esp + 0x24]
lea ecx, [esp + 0x1c]
push edx
call fcn.00401e10
mov eax, dword [0x7da0bc]
mov edx, dword [esp + 0x1c]
lea ecx, [eax + 0x7da0c0]
push ecx
push 0x7da0c0
push edx
lea ecx, [esp + 0x20]
call fcn.00401e10
mov eax, dword [0x7f30c0]
mov edx, dword [esp + 0x1c]
lea ecx, [eax + 0x7f30c4]
push ecx
push 0x7f30c4
push edx
lea ecx, [esp + 0x20]
call fcn.00401e10
mov eax, dword [0x80c0c4]
mov edx, dword [esp + 0x1c]
lea ecx, [eax + 0x80c0c8]
push ecx
push 0x80c0c8
push edx
lea ecx, [esp + 0x20]
call fcn.00401e10
mov eax, dword [0x8250c8]
mov edx, dword [esp + 0x1c]
lea ecx, [eax + 0x8250cc]
push ecx
push 0x8250cc
push edx
lea ecx, [esp + 0x20]
call fcn.00401e10
mov eax, dword [0x83e0cc]
mov edx, dword [esp + 0x1c]
lea ecx, [eax + 0x83e0d0]
push ecx
push 0x83e0d0
push edx
lea ecx, [esp + 0x20]
call fcn.00401e10
mov eax, dword [0x8570d0]
mov edx, dword [esp + 0x1c]
lea ecx, [eax + 0x8570d4]
push ecx
push 0x8570d4
push edx
lea ecx, [esp + 0x20]
call fcn.00401e10
mov eax, dword [0x8700d4]
mov edx, dword [esp + 0x1c]
lea ecx, [eax + 0x8700d8]
push ecx
push 0x8700d8
push edx
lea ecx, [esp + 0x20]
call fcn.00401e10
mov eax, dword [0x8890d8]
mov edx, dword [esp + 0x1c]
lea ecx, [eax + 0x8890dc]
push ecx
push 0x8890dc
push edx
lea ecx, [esp + 0x20]
call fcn.00401e10
mov eax, dword [0x8a20dc]
mov edx, dword [esp + 0x1c]
lea ecx, [eax + 0x8a20e0]
push ecx
push 0x8a20e0
push edx
lea ecx, [esp + 0x20]
call fcn.00401e10
mov eax, dword [0x8bb0e0]
mov edx, dword [esp + 0x1c]
lea ecx, [eax + 0x8bb0e4]
push ecx
push 0x8bb0e4
push edx
lea ecx, [esp + 0x20]
call fcn.00401e10
mov eax, dword [0x8d40e4]
mov edx, dword [esp + 0x1c]
lea ecx, [eax + 0x8d40e8]
push ecx
push 0x8d40e8
push edx
lea ecx, [esp + 0x20]
call fcn.00401e10
mov eax, dword [0x8ed0e8]
mov edx, dword [esp + 0x1c]
lea ecx, [eax + 0x8ed0ec]
push ecx
push 0x8ed0ec
push edx
lea ecx, [esp + 0x20]
call fcn.00401e10
mov eax, dword [esp + 0x18]
pop ebp
test eax, eax
jne 0x401db2
xor edx, edx
jmp 0x401db8
mov edx, dword [esp + 0x18]
sub edx, eax
xor ecx, ecx
test edx, edx
jle 0x401dcc
mov bl, byte [ecx + eax]
xor bl, 0x25
mov byte [ecx + eax], bl
inc ecx
cmp ecx, edx
jl 0x401dbe
mov esi, dword [esp + 0x30]
lea eax, [esp + 0x10]
push esi
push eax
call fcn.0040be20
mov eax, dword [esi + 4]
add esp, 8
test eax, eax
jne 0x401de9
xor esi, esi
jmp 0x401dee
mov esi, dword [esi + 8]
sub esi, eax
mov ecx, dword [esp + 0x14]
push ecx
call sub.MSVCRT.dll_void___cdecl_operator_delete_void__
mov ecx, dword [esp + 0x24]
add esp, 4
mov eax, esi
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
add esp, 0x20
ret