Function at 0x582f78
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
mov ecx, 0x45
push 0
push 0
dec ecx
jne 0x582f80
mov dword [ebp - 4], eax
xor eax, eax
push ebp
push 0x583da1
push dword fs:[eax]
mov dword fs:[eax], esp
lea eax, [ebp - 0x124]
mov edx, dword [0x605c48]
mov ecx, 0xff
call fcn.0040465c
lea edx, [ebp - 0x124]
lea eax, [ebp - 0xd]
mov cl, 8
call fcn.00402df0
xor eax, eax
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 4]
add eax, 0x40
lea edx, [ebp - 0xd]
call fcn.00404624
lea eax, [ebp - 0x12c]
push eax
lea eax, [ebp - 0xd]
mov dword [ebp - 0x134], eax
mov byte [ebp - 0x130], 4
lea edx, [ebp - 0x134]
xor ecx, ecx
mov eax, 0x583db4
call fcn.0040a55c
mov eax, dword [ebp - 0x12c]
call fcn.00409558
xor eax, 0x1e2d3c4f
lea ecx, [ebp - 0x128]
mov edx, 6
call fcn.00409500
mov edx, dword [ebp - 0x128]
lea eax, [ebp - 0x124]
mov ecx, 0xff
call fcn.0040465c
lea edx, [ebp - 0x124]
lea eax, [ebp - 0x1a]
mov cl, 3
call fcn.00402df0
lea eax, [ebp - 0x138]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
mov dword [ebp - 0x148], eax
mov byte [ebp - 0x144], 0xb
lea eax, [ebp - 0x1a]
mov dword [ebp - 0x140], eax
mov byte [ebp - 0x13c], 4
lea edx, [ebp - 0x148]
mov ecx, 1
mov eax, 0x583dc0
call fcn.0040a55c
mov edx, dword [ebp - 0x138]
mov eax, dword [ebp - 4]
add eax, 0x40
call fcn.00404414
lea eax, [ebp - 0x14c]
push eax
lea eax, [ebp - 0xd]
mov dword [ebp - 0x134], eax
mov byte [ebp - 0x130], 4
lea edx, [ebp - 0x134]
xor ecx, ecx
mov eax, 0x583db4
call fcn.0040a55c
mov edx, dword [ebp - 0x14c]
lea eax, [ebp - 0x124]
mov ecx, 0xff
call fcn.0040465c
lea edx, [ebp - 0x124]
lea eax, [ebp - 0x16]
mov cl, 8
call fcn.00402df0
lea eax, [ebp - 0x154]
lea edx, [ebp - 0x16]
call fcn.00404624
mov eax, dword [ebp - 0x154]
call fcn.00409558
xor eax, 0x1e2d3c4f
lea ecx, [ebp - 0x150]
mov edx, 6
call fcn.00409500
mov edx, dword [ebp - 0x150]
mov eax, dword [ebp - 4]
add eax, 0x44
call fcn.00404414
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x24], eax
lea eax, [ebp - 0x158]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x44]
mov dword [ebp - 0x134], eax
mov byte [ebp - 0x130], 0xb
lea edx, [ebp - 0x134]
xor ecx, ecx
mov eax, 0x583db4
call fcn.0040a55c
mov eax, dword [ebp - 0x158]
call fcn.00409558
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
xor eax, dword [ebp - 0x24]
xor edx, edx
push edx
push eax
lea edx, [ebp - 0x15c]
mov eax, 4
call fcn.00409528
mov edx, dword [ebp - 0x15c]
lea eax, [ebp - 0x124]
mov ecx, 0xff
call fcn.0040465c
lea edx, [ebp - 0x124]
lea eax, [ebp - 0x1a]
mov cl, 3
call fcn.00402df0
lea eax, [ebp - 0x160]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x44]
mov dword [ebp - 0x148], eax
mov byte [ebp - 0x144], 0xb
lea eax, [ebp - 0x1a]
mov dword [ebp - 0x140], eax
mov byte [ebp - 0x13c], 4
lea edx, [ebp - 0x148]
mov ecx, 1
mov eax, 0x583dc0
call fcn.0040a55c
mov edx, dword [ebp - 0x160]
mov eax, dword [ebp - 4]
add eax, 0x44
call fcn.00404414
lea eax, [ebp - 0x168]
lea edx, [ebp - 0x16]
call fcn.00404624
mov eax, dword [ebp - 0x168]
call fcn.00409558
xor eax, 0x6e423fed
cdq
push edx
push eax
mov eax, dword [ebp - 0x20]
xor edx, edx
xor eax, dword [esp]
xor edx, dword [esp + 4]
add esp, 8
push edx
push eax
lea edx, [ebp - 0x164]
mov eax, 6
call fcn.00409528
mov edx, dword [ebp - 0x164]
mov eax, dword [ebp - 4]
add eax, 0x48
call fcn.00404414
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x24], eax
lea eax, [ebp - 0x16c]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x48]
mov dword [ebp - 0x134], eax
mov byte [ebp - 0x130], 0xb
lea edx, [ebp - 0x134]
xor ecx, ecx
mov eax, 0x583db4
call fcn.0040a55c
mov eax, dword [ebp - 0x16c]
call fcn.00409558
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
xor eax, dword [ebp - 0x24]
xor edx, edx
push edx
push eax
lea edx, [ebp - 0x170]
mov eax, 4
call fcn.00409528
mov edx, dword [ebp - 0x170]
lea eax, [ebp - 0x124]
mov ecx, 0xff
call fcn.0040465c
lea edx, [ebp - 0x124]
lea eax, [ebp - 0x1a]
mov cl, 3
call fcn.00402df0
lea eax, [ebp - 0x174]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x48]
mov dword [ebp - 0x148], eax
mov byte [ebp - 0x144], 0xb
lea eax, [ebp - 0x1a]
mov dword [ebp - 0x140], eax
mov byte [ebp - 0x13c], 4
lea edx, [ebp - 0x148]
mov ecx, 1
mov eax, 0x583dc0
call fcn.0040a55c
mov edx, dword [ebp - 0x174]
mov eax, dword [ebp - 4]
add eax, 0x48
call fcn.00404414
lea eax, [ebp - 0x17c]
lea edx, [ebp - 0x16]
call fcn.00404624
mov eax, dword [ebp - 0x17c]
call fcn.00409558
cdq
xor eax, 0xf1cf712a
xor edx, 0
push edx
push eax
mov eax, dword [ebp - 0x20]
xor edx, edx
xor eax, dword [esp]
xor edx, dword [esp + 4]
add esp, 8
push edx
push eax
lea edx, [ebp - 0x178]
mov eax, 6
call fcn.00409528
mov edx, dword [ebp - 0x178]
mov eax, dword [ebp - 4]
add eax, 0x4c
call fcn.00404414
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x24], eax
lea eax, [ebp - 0x180]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x4c]
mov dword [ebp - 0x134], eax
mov byte [ebp - 0x130], 0xb
lea edx, [ebp - 0x134]
xor ecx, ecx
mov eax, 0x583db4
call fcn.0040a55c
mov eax, dword [ebp - 0x180]
call fcn.00409558
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
xor eax, dword [ebp - 0x24]
xor edx, edx
push edx
push eax
lea edx, [ebp - 0x184]
mov eax, 4
call fcn.00409528
mov edx, dword [ebp - 0x184]
lea eax, [ebp - 0x124]
mov ecx, 0xff
call fcn.0040465c
lea edx, [ebp - 0x124]
lea eax, [ebp - 0x1a]
mov cl, 3
call fcn.00402df0
lea eax, [ebp - 0x188]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x4c]
mov dword [ebp - 0x148], eax
mov byte [ebp - 0x144], 0xb
lea eax, [ebp - 0x1a]
mov dword [ebp - 0x140], eax
mov byte [ebp - 0x13c], 4
lea edx, [ebp - 0x148]
mov ecx, 1
mov eax, 0x583dc0
call fcn.0040a55c
mov edx, dword [ebp - 0x188]
mov eax, dword [ebp - 4]
add eax, 0x4c
call fcn.00404414
lea eax, [ebp - 0x190]
lea edx, [ebp - 0x16]
call fcn.00404624
mov eax, dword [ebp - 0x190]
call fcn.00409558
xor eax, 0x2f3692f1
cdq
push edx
push eax
mov eax, dword [ebp - 0x20]
xor edx, edx
xor eax, dword [esp]
xor edx, dword [esp + 4]
add esp, 8
push edx
push eax
lea edx, [ebp - 0x18c]
mov eax, 6
call fcn.00409528
mov edx, dword [ebp - 0x18c]
mov eax, dword [ebp - 4]
add eax, 0x50
call fcn.00404414
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x24], eax
lea eax, [ebp - 0x194]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x50]
mov dword [ebp - 0x134], eax
mov byte [ebp - 0x130], 0xb
lea edx, [ebp - 0x134]
xor ecx, ecx
mov eax, 0x583db4
call fcn.0040a55c
mov eax, dword [ebp - 0x194]
call fcn.00409558
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
xor eax, dword [ebp - 0x24]
xor edx, edx
push edx
push eax
lea edx, [ebp - 0x198]
mov eax, 4
call fcn.00409528
mov edx, dword [ebp - 0x198]
lea eax, [ebp - 0x124]
mov ecx, 0xff
call fcn.0040465c
lea edx, [ebp - 0x124]
lea eax, [ebp - 0x1a]
mov cl, 3
call fcn.00402df0
lea eax, [ebp - 0x19c]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x50]
mov dword [ebp - 0x148], eax
mov byte [ebp - 0x144], 0xb
lea eax, [ebp - 0x1a]
mov dword [ebp - 0x140], eax
mov byte [ebp - 0x13c], 4
lea edx, [ebp - 0x148]
mov ecx, 1
mov eax, 0x583dc0
call fcn.0040a55c
mov edx, dword [ebp - 0x19c]
mov eax, dword [ebp - 4]
add eax, 0x50
call fcn.00404414
lea eax, [ebp - 0x1a4]
lea edx, [ebp - 0x16]
call fcn.00404624
mov eax, dword [ebp - 0x1a4]
call fcn.00409558
xor eax, 0x2f3692f1
cdq
push edx
push eax
mov eax, dword [ebp - 0x20]
xor edx, edx
xor eax, dword [esp]
xor edx, dword [esp + 4]
add esp, 8
push edx
push eax
lea edx, [ebp - 0x1a0]
mov eax, 6
call fcn.00409528
mov edx, dword [ebp - 0x1a0]
mov eax, dword [ebp - 4]
add eax, 0x54
call fcn.00404414
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x24], eax
lea eax, [ebp - 0x1a8]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x54]
mov dword [ebp - 0x134], eax
mov byte [ebp - 0x130], 0xb
lea edx, [ebp - 0x134]
xor ecx, ecx
mov eax, 0x583db4
call fcn.0040a55c
mov eax, dword [ebp - 0x1a8]
call fcn.00409558
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
xor eax, dword [ebp - 0x24]
xor edx, edx
push edx
push eax
lea edx, [ebp - 0x1ac]
mov eax, 4
call fcn.00409528
mov edx, dword [ebp - 0x1ac]
lea eax, [ebp - 0x124]
mov ecx, 0xff
call fcn.0040465c
lea edx, [ebp - 0x124]
lea eax, [ebp - 0x1a]
mov cl, 3
call fcn.00402df0
lea eax, [ebp - 0x1b0]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x54]
mov dword [ebp - 0x148], eax
mov byte [ebp - 0x144], 0xb
lea eax, [ebp - 0x1a]
mov dword [ebp - 0x140], eax
mov byte [ebp - 0x13c], 4
lea edx, [ebp - 0x148]
mov ecx, 1
mov eax, 0x583dc0
call fcn.0040a55c
mov edx, dword [ebp - 0x1b0]
mov eax, dword [ebp - 4]
add eax, 0x54
call fcn.00404414
lea eax, [ebp - 0x1b8]
lea edx, [ebp - 0x16]
call fcn.00404624
mov eax, dword [ebp - 0x1b8]
call fcn.00409558
xor eax, 0x6193f1fa
cdq
push edx
push eax
mov eax, dword [ebp - 0x20]
xor edx, edx
xor eax, dword [esp]
xor edx, dword [esp + 4]
add esp, 8
push edx
push eax
lea edx, [ebp - 0x1b4]
mov eax, 6
call fcn.00409528
mov edx, dword [ebp - 0x1b4]
mov eax, dword [ebp - 4]
add eax, 0x58
call fcn.00404414
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x24], eax
lea eax, [ebp - 0x1bc]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x58]
mov dword [ebp - 0x134], eax
mov byte [ebp - 0x130], 0xb
lea edx, [ebp - 0x134]
xor ecx, ecx
mov eax, 0x583db4
call fcn.0040a55c
mov eax, dword [ebp - 0x1bc]
call fcn.00409558
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
xor eax, dword [ebp - 0x24]
xor edx, edx
push edx
push eax
lea edx, [ebp - 0x1c0]
mov eax, 4
call fcn.00409528
mov edx, dword [ebp - 0x1c0]
lea eax, [ebp - 0x124]
mov ecx, 0xff
call fcn.0040465c
lea edx, [ebp - 0x124]
lea eax, [ebp - 0x1a]
mov cl, 3
call fcn.00402df0
lea eax, [ebp - 0x1c4]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x58]
mov dword [ebp - 0x148], eax
mov byte [ebp - 0x144], 0xb
lea eax, [ebp - 0x1a]
mov dword [ebp - 0x140], eax
mov byte [ebp - 0x13c], 4
lea edx, [ebp - 0x148]
mov ecx, 1
mov eax, 0x583dc0
call fcn.0040a55c
mov edx, dword [ebp - 0x1c4]
mov eax, dword [ebp - 4]
add eax, 0x58
call fcn.00404414
lea eax, [ebp - 0x1cc]
lea edx, [ebp - 0x16]
call fcn.00404624
mov eax, dword [ebp - 0x1cc]
call fcn.00409558
xor eax, 0x721fa3d1
cdq
push edx
push eax
mov eax, dword [ebp - 0x20]
xor edx, edx
xor eax, dword [esp]
xor edx, dword [esp + 4]
add esp, 8
push edx
push eax
lea edx, [ebp - 0x1c8]
mov eax, 6
call fcn.00409528
mov edx, dword [ebp - 0x1c8]
mov eax, dword [ebp - 4]
add eax, 0x5c
call fcn.00404414
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x24], eax
lea eax, [ebp - 0x1d0]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
mov dword [ebp - 0x134], eax
mov byte [ebp - 0x130], 0xb
lea edx, [ebp - 0x134]
xor ecx, ecx
mov eax, 0x583db4
call fcn.0040a55c
mov eax, dword [ebp - 0x1d0]
call fcn.00409558
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
xor eax, dword [ebp - 0x24]
xor edx, edx
push edx
push eax
lea edx, [ebp - 0x1d4]
mov eax, 4
call fcn.00409528
mov edx, dword [ebp - 0x1d4]
lea eax, [ebp - 0x124]
mov ecx, 0xff
call fcn.0040465c
lea edx, [ebp - 0x124]
lea eax, [ebp - 0x1a]
mov cl, 3
call fcn.00402df0
lea eax, [ebp - 0x1d8]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
mov dword [ebp - 0x148], eax
mov byte [ebp - 0x144], 0xb
lea eax, [ebp - 0x1a]
mov dword [ebp - 0x140], eax
mov byte [ebp - 0x13c], 4
lea edx, [ebp - 0x148]
mov ecx, 1
mov eax, 0x583dc0
call fcn.0040a55c
mov edx, dword [ebp - 0x1d8]
mov eax, dword [ebp - 4]
add eax, 0x5c
call fcn.00404414
lea eax, [ebp - 0x1e0]
lea edx, [ebp - 0x16]
call fcn.00404624
mov eax, dword [ebp - 0x1e0]
call fcn.00409558
cdq
xor eax, 0x8ac4c9fa
xor edx, 0
push edx
push eax
mov eax, dword [ebp - 0x20]
xor edx, edx
xor eax, dword [esp]
xor edx, dword [esp + 4]
add esp, 8
push edx
push eax
lea edx, [ebp - 0x1dc]
mov eax, 6
call fcn.00409528
mov edx, dword [ebp - 0x1dc]
mov eax, dword [ebp - 4]
add eax, 0x60
call fcn.00404414
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x24], eax
lea eax, [ebp - 0x1e4]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x60]
mov dword [ebp - 0x134], eax
mov byte [ebp - 0x130], 0xb
lea edx, [ebp - 0x134]
xor ecx, ecx
mov eax, 0x583db4
call fcn.0040a55c
mov eax, dword [ebp - 0x1e4]
call fcn.00409558
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
xor eax, dword [ebp - 0x24]
xor edx, edx
push edx
push eax
lea edx, [ebp - 0x1e8]
mov eax, 4
call fcn.00409528
mov edx, dword [ebp - 0x1e8]
lea eax, [ebp - 0x124]
mov ecx, 0xff
call fcn.0040465c
lea edx, [ebp - 0x124]
lea eax, [ebp - 0x1a]
mov cl, 3
call fcn.00402df0
lea eax, [ebp - 0x1ec]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x60]
mov dword [ebp - 0x148], eax
mov byte [ebp - 0x144], 0xb
lea eax, [ebp - 0x1a]
mov dword [ebp - 0x140], eax
mov byte [ebp - 0x13c], 4
lea edx, [ebp - 0x148]
mov ecx, 1
mov eax, 0x583dc0
call fcn.0040a55c
mov edx, dword [ebp - 0x1ec]
mov eax, dword [ebp - 4]
add eax, 0x60
call fcn.00404414
lea eax, [ebp - 0x1f4]
lea edx, [ebp - 0x16]
call fcn.00404624
mov eax, dword [ebp - 0x1f4]
call fcn.00409558
cdq
xor eax, 0x8ac4c9fa
xor edx, 0
push edx
push eax
mov eax, dword [ebp - 0x20]
xor edx, edx
xor eax, dword [esp]
xor edx, dword [esp + 4]
add esp, 8
push edx
push eax
lea edx, [ebp - 0x1f0]
mov eax, 6
call fcn.00409528
mov edx, dword [ebp - 0x1f0]
mov eax, dword [ebp - 4]
add eax, 0x64
call fcn.00404414
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x24], eax
lea eax, [ebp - 0x1f8]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x64]
mov dword [ebp - 0x134], eax
mov byte [ebp - 0x130], 0xb
lea edx, [ebp - 0x134]
xor ecx, ecx
mov eax, 0x583db4
call fcn.0040a55c
mov eax, dword [ebp - 0x1f8]
call fcn.00409558
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
xor eax, dword [ebp - 0x24]
xor edx, edx
push edx
push eax
lea edx, [ebp - 0x1fc]
mov eax, 4
call fcn.00409528
mov edx, dword [ebp - 0x1fc]
lea eax, [ebp - 0x124]
mov ecx, 0xff
call fcn.0040465c
lea edx, [ebp - 0x124]
lea eax, [ebp - 0x1a]
mov cl, 3
call fcn.00402df0
lea eax, [ebp - 0x200]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x64]
mov dword [ebp - 0x148], eax
mov byte [ebp - 0x144], 0xb
lea eax, [ebp - 0x1a]
mov dword [ebp - 0x140], eax
mov byte [ebp - 0x13c], 4
lea edx, [ebp - 0x148]
mov ecx, 1
mov eax, 0x583dc0
call fcn.0040a55c
mov edx, dword [ebp - 0x200]
mov eax, dword [ebp - 4]
add eax, 0x64
call fcn.00404414
lea eax, [ebp - 0x208]
lea edx, [ebp - 0x16]
call fcn.00404624
mov eax, dword [ebp - 0x208]
call fcn.00409558
xor eax, 0x2f3692f1
cdq
push edx
push eax
mov eax, dword [ebp - 0x20]
xor edx, edx
xor eax, dword [esp]
xor edx, dword [esp + 4]
add esp, 8
push edx
push eax
lea edx, [ebp - 0x204]
mov eax, 6
call fcn.00409528
mov edx, dword [ebp - 0x204]
mov eax, dword [ebp - 4]
add eax, 0x68
call fcn.00404414
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x24], eax
lea eax, [ebp - 0x20c]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x68]
mov dword [ebp - 0x134], eax
mov byte [ebp - 0x130], 0xb
lea edx, [ebp - 0x134]
xor ecx, ecx
mov eax, 0x583db4
call fcn.0040a55c
mov eax, dword [ebp - 0x20c]
call fcn.00409558
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
xor eax, dword [ebp - 0x24]
xor edx, edx
push edx
push eax
lea edx, [ebp - 0x210]
mov eax, 4
call fcn.00409528
mov edx, dword [ebp - 0x210]
lea eax, [ebp - 0x124]
mov ecx, 0xff
call fcn.0040465c
lea edx, [ebp - 0x124]
lea eax, [ebp - 0x1a]
mov cl, 3
call fcn.00402df0
lea eax, [ebp - 0x214]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x68]
mov dword [ebp - 0x148], eax
mov byte [ebp - 0x144], 0xb
lea eax, [ebp - 0x1a]
mov dword [ebp - 0x140], eax
mov byte [ebp - 0x13c], 4
lea edx, [ebp - 0x148]
mov ecx, 1
mov eax, 0x583dc0
call fcn.0040a55c
mov edx, dword [ebp - 0x214]
mov eax, dword [ebp - 4]
add eax, 0x68
call fcn.00404414
lea eax, [ebp - 0x21c]
lea edx, [ebp - 0x16]
call fcn.00404624
mov eax, dword [ebp - 0x21c]
call fcn.00409558
cdq
xor eax, 0x943fc9fa
xor edx, 0
push edx
push eax
mov eax, dword [ebp - 0x20]
xor edx, edx
xor eax, dword [esp]
xor edx, dword [esp + 4]
add esp, 8
push edx
push eax
lea edx, [ebp - 0x218]
mov eax, 6
call fcn.00409528
mov edx, dword [ebp - 0x218]
mov eax, dword [ebp - 4]
add eax, 0x6c
call fcn.00404414
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x24], eax
lea eax, [ebp - 0x220]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x6c]
mov dword [ebp - 0x134], eax
mov byte [ebp - 0x130], 0xb
lea edx, [ebp - 0x134]
xor ecx, ecx
mov eax, 0x583db4
call fcn.0040a55c
mov eax, dword [ebp - 0x220]
call fcn.00409558
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
xor eax, dword [ebp - 0x24]
xor edx, edx
push edx
push eax
lea edx, [ebp - 0x224]
mov eax, 4
call fcn.00409528
mov edx, dword [ebp - 0x224]
lea eax, [ebp - 0x124]
mov ecx, 0xff
call fcn.0040465c
lea edx, [ebp - 0x124]
lea eax, [ebp - 0x1a]
mov cl, 3
call fcn.00402df0
lea eax, [ebp - 0x228]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x6c]
mov dword [ebp - 0x148], eax
mov byte [ebp - 0x144], 0xb
lea eax, [ebp - 0x1a]
mov dword [ebp - 0x140], eax
mov byte [ebp - 0x13c], 4
lea edx, [ebp - 0x148]
mov ecx, 1
mov eax, 0x583dc0
call fcn.0040a55c
mov edx, dword [ebp - 0x228]
mov eax, dword [ebp - 4]
add eax, 0x6c
call fcn.00404414
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x583da8
lea eax, [ebp - 0x228]
mov edx, 0x38
call fcn.004043e4
lea eax, [ebp - 0x138]
call fcn.004043c0
lea eax, [ebp - 0x12c]
mov edx, 2
call fcn.004043e4
ret