Function at 0x50d798
Capabilities:
Parse pe header

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x78
mov dword [ebp - 4], 0
mov dword [ebp - 8], 0
mov dword [ebp - 0xc], 0
mov dword [ebp - 0x10], 0
push 0x2c
call fcn.005fffc4
add esp, 4
mov dword [ebp - 0x14], eax
mov ebx, eax
mov edi, eax
xor eax, eax
mov ecx, 0xb
rep stosd dword es:[edi], eax
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x28], 0
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x34], 0
mov ebx, dword [ebp + 0xc]
mov ebx, dword [ebx]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x50d832
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x50d82e
imul eax, dword [ebx]
jmp 0x50d823
mov ecx, eax
test ecx, ecx
je 0x50d851
push ecx
mov eax, dword [ebx]
test eax, eax
je 0x50d84a
push ebx
push eax
call fcn.005fffbe
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x50d838
call fcn.005fffbe
add esp, 4
mov eax, 0x760403
mov ebx, dword [ebp + 0xc]
mov dword [ebx], eax
mov ebx, dword [ebp + 0x10]
mov ebx, dword [ebx]
push ebx
call fcn.005fffbe
add esp, 4
mov eax, 0x760403
mov ebx, dword [ebp + 0x10]
mov dword [ebx], eax
push 0
mov ebx, 0x104
call fcn.00606060
add esp, 4
mov dword [ebp - 0x38], eax
push 0
mov ebx, 0x108
call fcn.00606100
add esp, 4
mov dword [ebp - 0x3c], eax
push dword [ebp - 0x3c]
push 0x760400
push dword [ebp - 0x38]
mov ecx, 3
call fcn.004c5686
add esp, 0xc
mov dword [ebp - 0x40], eax
mov ebx, dword [ebp - 0x38]
test ebx, ebx
je 0x50d8d0
push ebx
call fcn.005fffbe
add esp, 4
mov ebx, dword [ebp - 0x3c]
test ebx, ebx
je 0x50d8e0
push ebx
call fcn.005fffbe
add esp, 4
mov eax, dword [ebp - 0x40]
push eax
mov ebx, dword [ebp + 8]
push dword [ebx]
call fcn.004cce90
add esp, 8
cmp eax, 0
mov eax, 0
sete al
mov dword [ebp - 0x44], eax
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x50d90f
push ebx
call fcn.005fffbe
add esp, 4
cmp dword [ebp - 0x44], 0
je 0x50d923
mov eax, 0
jmp 0x50ef73
mov dword [ebp - 0x38], esp
mov ebx, dword [ebp + 8]
push dword [ebx]
call dword [sym.imp.kernel32.dll_GetModuleHandleA]
nop
nop
nop
nop
cmp dword [ebp - 0x38], esp
je 0x50d947
push 6
call fcn.005fffca
add esp, 4
mov dword [ebp - 4], eax
push 0x80000301
push 0
push 1
push 0x80000301
push 0
push 1
push reloc.wsock32.dll_connect
push 0
mov ebx, dword [ebp + 8]
mov eax, dword [ebx]
test eax, eax
jne 0x50d977
mov eax, 0x760402
push eax
push 3
mov ebx, 0x270
call fcn.00607ef0
add esp, 0x28
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
jne 0x50d9a1
mov eax, 0
jmp 0x50ef73
mov dword [ebp - 0xc], 0
push 0x80000301
push 0
push 0x40
push 0x80000301
push 0
push dword [ebp - 8]
push 2
mov ebx, 0x294
call fcn.00605600
add esp, 0x1c
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x38]
push eax
mov ebx, dword [ebp - 0x10]
test ebx, ebx
je 0x50d9e7
push ebx
call fcn.005fffbe
add esp, 4
pop eax
mov dword [ebp - 0x10], eax
push reloc.wsock32.dll_getpeername
push 0
mov eax, dword [ebp - 0x10]
test eax, eax
jne 0x50d9fe
mov eax, 0x760403
push eax
push 1
mov ebx, 0x194
call fcn.006031d0
add esp, 0x10
mov dword [ebp - 0x3c], eax
cmp dword [ebp - 0x3c], 0x40
jne 0x50ef4f
mov dword [ebp - 0x38], esp
mov eax, dword [ebp - 0x10]
test eax, eax
je 0x50da2b
add eax, 8
push eax
call dword [sym.imp.kernel32.dll_SetHandleCount]
nop
nop
nop
nop
cmp dword [ebp - 0x38], esp
je 0x50da48
push 6
call fcn.005fffca
add esp, 4
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x40], esp
push 0x40
push dword [ebp - 0x3c]
mov eax, dword [0x7ad1d5]
push eax
push 0x40
call fcn.005fffc4
add esp, 4
mov edi, eax
pop ebx
push eax
mov dword [ebp - 0x48], ebx
mov dword [ebp - 0x44], eax
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
push ebx
mov ebx, dword [ebx]
add ebx, 8
mov ecx, 4
mov esi, ebx
shl ecx, 1
rep movsb byte es:[edi], byte [esi]
pop ebx
add ebx, 4
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
push ebx
mov ebx, dword [ebx]
add ebx, 8
mov ecx, 0xa
mov esi, ebx
shl ecx, 1
rep movsb byte es:[edi], byte [esi]
pop ebx
add ebx, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
call dword [sym.imp.kernel32.dll_RtlMoveMemory]
nop
nop
nop
nop
cmp dword [ebp - 0x40], esp
je 0x50db79
push 6
call fcn.005fffca
add esp, 4
mov ebx, dword [ebp - 0x44]
push ebx
mov edi, dword [ebp - 0x48]
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
push ebx
push edi
push 2
mov eax, 2
call fcn.006010d0
add esp, 4
pop edi
pop ebx
push ebx
push edi
mov edi, dword [edi]
mov ecx, dword [edi]
add edi, 4
test ecx, ecx
je 0x50dc49
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x50dc47
imul eax, dword [edi]
jmp 0x50dc3c
mov ecx, eax
cmp ecx, 4
jle 0x50dc53
mov ecx, 4
mov esi, ebx
shl ecx, 1
rep movsb byte es:[edi], byte [esi]
pop edi
pop ebx
add edi, 4
add ebx, 8
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
push ebx
push edi
push 2
mov eax, 2
call fcn.006010d0
add esp, 4
pop edi
pop ebx
push ebx
push edi
mov edi, dword [edi]
mov ecx, dword [edi]
add edi, 4
test ecx, ecx
je 0x50dca6
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x50dca4
imul eax, dword [edi]
jmp 0x50dc99
mov ecx, eax
cmp ecx, 0xa
jle 0x50dcb0
mov ecx, 0xa
mov esi, ebx
shl ecx, 1
rep movsb byte es:[edi], byte [esi]
pop edi
pop ebx
add edi, 4
add ebx, 0x14
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
call fcn.005fffbe
add esp, 4
mov ebx, dword [0x7ad1d5]
mov dword [ebp - 0x38], ebx
mov ebx, dword [ebp - 0x38]
cmp word [ebx], 0x5a4d
jne 0x50ef4f
mov ebx, dword [0x7ad1d5]
add ebx, 0x48
mov dword [ebp - 0x38], ebx
push 0x80000301
push 0
mov ebx, dword [ebp - 0x38]
push dword [ebx]
push 0x80000301
push 0
push 1
push 0x80000301
push 0
push dword [ebp - 8]
push 3
mov ebx, 0x288
call fcn.006082f0
add esp, 0x28
push 0x80000301
push 0
push 0xf8
push 0x80000301
push 0
push dword [ebp - 8]
push 2
mov ebx, 0x294
call fcn.00605600
add esp, 0x1c
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x38]
push eax
mov ebx, dword [ebp - 0x10]
test ebx, ebx
je 0x50dd66
push ebx
call fcn.005fffbe
add esp, 4
pop eax
mov dword [ebp - 0x10], eax
push reloc.wsock32.dll_getpeername
push 0
mov eax, dword [ebp - 0x10]
test eax, eax
jne 0x50dd7d
mov eax, 0x760403
push eax
push 1
mov ebx, 0x194
call fcn.006031d0
add esp, 0x10
mov dword [ebp - 0x3c], eax
cmp dword [ebp - 0x3c], 0xf8
jne 0x50ef4f
mov dword [ebp - 0x38], esp
mov eax, dword [ebp - 0x10]
test eax, eax
je 0x50ddad
add eax, 8
push eax
call dword [sym.imp.kernel32.dll_SetHandleCount]
nop
nop
nop
nop
cmp dword [ebp - 0x38], esp
je 0x50ddca
push 6
call fcn.005fffca
add esp, 4
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x40], esp
push 0xf8
push dword [ebp - 0x3c]
mov eax, dword [0x7ad1d9]
push eax
push 0xf8
call fcn.005fffc4
add esp, 4
mov edi, eax
pop ebx
push eax
mov dword [ebp - 0x48], ebx
mov dword [ebp - 0x44], eax
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
push ebx
mov ebx, dword [ebx]
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov byte [edi], al
inc edi
mov eax, dword [ebx]
add ebx, 4
mov byte [edi], al
inc edi
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
push ebx
mov ecx, 0x10
mov ebx, dword [ebx]
add ebx, 8
push ebx
push ecx
mov ebx, dword [ebx]
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
pop ecx
pop ebx
add ebx, 4
dec ecx
jne 0x50df92
pop ebx
add ebx, 4
pop ebx
add ebx, 4
call dword [sym.imp.kernel32.dll_RtlMoveMemory]
nop
nop
nop
nop
cmp dword [ebp - 0x40], esp
je 0x50dfda
push 6
call fcn.005fffca
add esp, 4
mov ebx, dword [ebp - 0x44]
push ebx
mov edi, dword [ebp - 0x48]
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
push edi
mov edi, dword [edi]
push ebx
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
pop ebx
add ebx, 0x14
pop edi
add edi, 4
push edi
mov edi, dword [edi]
push ebx
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
mov al, byte [ebx]
inc ebx
mov dword [edi], eax
add edi, 4
mov al, byte [ebx]
inc ebx
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
push edi
mov edi, dword [edi]
mov ecx, 0x10
add edi, 8
push ebx
push edi
push ecx
mov edi, dword [edi]
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
pop ecx
pop edi
pop ebx
add edi, 4
add ebx, 8
dec ecx
jne 0x50e187
pop edi
add edi, 4
pop ebx
add ebx, 0xe0
pop edi
add edi, 4
call fcn.005fffbe
add esp, 4
mov ebx, dword [0x7ad1d9]
mov dword [ebp - 0x38], ebx
mov ebx, dword [ebp - 0x38]
cmp dword [ebx], 0x4550
jne 0x50ef4f
mov ebx, dword [0x7ad1d9]
mov ebx, dword [ebx + 8]
mov ebx, dword [ebx + 0x78]
call fcn.004c6a80
mov eax, 1
cmp eax, ecx
jl 0x50e209
push 1
call fcn.005fffca
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x38], ebx
mov ebx, dword [ebp - 0x38]
cmp dword [ebx], 0
jle 0x50ef4f
mov ebx, dword [0x7ad1d9]
mov ebx, dword [ebx + 4]
add ebx, 4
mov dword [ebp - 0x38], ebx
mov dword [ebp - 0x40], 1
mov ebx, dword [ebp - 0x38]
mov ax, word [ebx]
cwde
cmp eax, 0
jge 0x50e251
push 0xa
call fcn.005fffca
add esp, 4
mov dword [ebp - 0x3c], eax
lea ebx, [ebp - 0x40]
call fcn.004c6a80
push ecx
shl ecx, 2
add ecx, 8
push ecx
call fcn.005fffc4
add esp, 4
mov edi, eax
mov dword [edi], 1
add edi, 4
pop ecx
push eax
push ecx
lea esi, [ebp - 0x3c]
lodsd eax, dword [esi]
stosd dword es:[edi], eax
mov ebx, dword [0x7ad1dd]
call fcn.004c6a80
pop edx
test ecx, ecx
je 0x50e2b9
push edi
push edx
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.005fffbe
add esp, 4
pop ebx
call fcn.005fffbe
add esp, 4
pop ebx
pop ecx
add ebx, 4
dec ecx
jne 0x50e295
pop edx
pop edi
test edx, edx
je 0x50e30b
mov ebx, edi
push edx
push ebx
push 0x28
call fcn.005fffc4
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov edi, eax
xor eax, eax
mov ecx, 0xa
rep stosd dword es:[edi], eax
push ebx
push 0x10
call fcn.005fffc4
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x77f41c
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
xor eax, eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
pop ebx
pop edx
add ebx, 4
dec edx
jne 0x50e2c3
push dword [0x7ad1dd]
call fcn.005fffbe
add esp, 4
pop eax
mov dword [0x7ad1dd], eax
mov ebx, dword [0x7ad1d5]
add ebx, 0x48
mov dword [ebp - 0x38], ebx
mov ebx, dword [ebp - 0x38]
fild dword [ebx]
fstp qword [ebp - 0x40]
fld qword [ebp - 0x40]
fadd qword [0x77f424]
fstp qword [ebp - 0x48]
fld qword [ebp - 0x48]
call fcn.004c58cd
push 0x80000301
push 0
push eax
push 0x80000301
push 0
push 1
push 0x80000301
push 0
push dword [ebp - 8]
push 3
mov ebx, 0x288
call fcn.006082f0
add esp, 0x28
mov ebx, dword [0x7ad1d9]
mov ebx, dword [ebx + 4]
add ebx, 4
mov dword [ebp - 0x38], ebx
mov ebx, dword [ebp - 0x38]
mov ax, word [ebx]
cwde
mov dword [ebp - 0x40], eax
fild dword [ebp - 0x40]
fstp qword [ebp - 0x40]
fld qword [ebp - 0x40]
fmul qword [0x77f42c]
fstp qword [ebp - 0x48]
fld qword [ebp - 0x48]
call fcn.004c58cd
push 0x80000301
push 0
push eax
push 0x80000301
push 0
push dword [ebp - 8]
push 2
mov ebx, 0x294
call fcn.00605600
add esp, 0x1c
mov dword [ebp - 0x4c], eax
mov eax, dword [ebp - 0x4c]
push eax
mov ebx, dword [ebp - 0x10]
test ebx, ebx
je 0x50e3e5
push ebx
call fcn.005fffbe
add esp, 4
pop eax
mov dword [ebp - 0x10], eax
push reloc.wsock32.dll_getpeername
push 0
mov eax, dword [ebp - 0x10]
test eax, eax
jne 0x50e3fc
mov eax, 0x760403
push eax
push 1
mov ebx, 0x194
call fcn.006031d0
add esp, 0x10
mov dword [ebp - 0x38], eax
mov ebx, dword [0x7ad1d9]
mov ebx, dword [ebx + 4]
add ebx, 4
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
mov ax, word [ebx]
cwde
mov dword [ebp - 0x44], eax
fild dword [ebp - 0x44]
fstp qword [ebp - 0x44]
fld qword [ebp - 0x44]
fmul qword [0x77f42c]
fstp qword [ebp - 0x4c]
fild dword [ebp - 0x38]
fstp qword [ebp - 0x54]
fld qword [ebp - 0x54]
fsub qword [ebp - 0x4c]
ftst
fnstsw ax
test ah, 1
je 0x50e454
fchs
fcomp qword [0x7638dd]
fnstsw ax
test ah, 0x41
je 0x50ef4f
mov dword [ebp - 0x38], esp
mov eax, dword [ebp - 0x10]
test eax, eax
je 0x50e472
add eax, 8
push eax
call dword [sym.imp.kernel32.dll_SetHandleCount]
nop
nop
nop
nop
cmp dword [ebp - 0x38], esp
je 0x50e48f
push 6
call fcn.005fffca
add esp, 4
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x7ad1d9]
mov ebx, dword [ebx + 4]
add ebx, 4
mov dword [ebp - 0x40], ebx
mov ebx, dword [ebp - 0x40]
mov ax, word [ebx]
cwde
mov dword [ebp - 0x48], eax
fild dword [ebp - 0x48]
fstp qword [ebp - 0x48]
fld qword [ebp - 0x48]
fmul qword [0x77f42c]
fstp qword [ebp - 0x50]
mov dword [ebp - 0x54], esp
fld qword [ebp - 0x50]
call fcn.004c58cd
push eax
push dword [ebp - 0x3c]
mov ebx, dword [0x7ad1dd]
call fcn.004c6a80
push ebx
mov dword [ebp - 0x58], ecx
test ecx, ecx
jne 0x50e4e3
xor eax, eax
jmp 0x50e4ef
imul ecx, ecx, 0x28
push ecx
call fcn.005fffc4
add esp, 4
mov edi, eax
pop ebx
push eax
mov dword [ebp - 0x60], ebx
mov dword [ebp - 0x5c], eax
mov ecx, dword [ebp - 0x58]
test ecx, ecx
je 0x50e592
push ecx
push edi
push ebx
mov ebx, dword [ebx]
push ebx
mov ebx, dword [ebx]
add ebx, 8
mov ecx, 8
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop ebx
add ebx, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
pop ebx
pop edi
pop ecx
dec ecx
je 0x50e592
add ebx, 4
add edi, 0x28
jmp 0x50e504
call dword [sym.imp.kernel32.dll_RtlMoveMemory]
nop
nop
nop
nop
cmp dword [ebp - 0x54], esp
je 0x50e5ae
push 6
call fcn.005fffca
add esp, 4
mov ebx, dword [ebp - 0x5c]
push ebx
mov edi, dword [ebp - 0x60]
mov ecx, dword [ebp - 0x58]
test ecx, ecx
je 0x50e67d
push ecx
push edi
push ebx
mov edi, dword [edi]
push ebx
push edi
push 1
mov eax, 2
call fcn.006010d0
add esp, 4
pop edi
pop ebx
push ebx
push edi
mov edi, dword [edi]
mov ecx, dword [edi]
add edi, 4
test ecx, ecx
je 0x50e5f4
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x50e5f2
imul eax, dword [edi]
jmp 0x50e5e7
mov ecx, eax
cmp ecx, 8
jle 0x50e5fe
mov ecx, 8
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop edi
pop ebx
add edi, 4
add ebx, 8
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
pop ebx
pop edi
pop ecx
dec ecx
je 0x50e67d
add ebx, 0x28
add edi, 4
jmp 0x50e5c0
call fcn.005fffbe
add esp, 4
mov ebx, dword [0x7ad1d9]
mov ebx, dword [ebx + 8]
mov ebx, dword [ebx + 0x78]
call fcn.004c6a80
mov eax, 0
cmp eax, ecx
jl 0x50e6ac
push 1
call fcn.005fffca
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x38], ebx
mov ebx, dword [ebp - 0x38]
cmp dword [ebx], 0
jle 0x50ef4f
mov ebx, dword [0x7ad1d9]
mov ebx, dword [ebx + 8]
mov ebx, dword [ebx + 0x78]
call fcn.004c6a80
mov eax, 0
cmp eax, ecx
jl 0x50e6ec
push 1
call fcn.005fffca
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov dword [ebp - 0x38], ebx
mov ebx, dword [0x7ad1d9]
mov ebx, dword [ebx + 8]
mov ebx, dword [ebx + 0x78]
call fcn.004c6a80
mov eax, 0
cmp eax, ecx
jl 0x50e71d
push 1
call fcn.005fffca
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
push dword [ebx]
call fcn.0050efa7
mov dword [ebp - 0x40], eax
mov ebx, dword [ebp - 0x38]
fild dword [ebx]
fstp qword [ebp - 0x48]
fld qword [ebp - 0x48]
fild dword [ebp - 0x40]
fstp qword [ebp - 0x50]
fsub qword [ebp - 0x50]
fstp qword [ebp - 0x58]
fld qword [ebp - 0x58]
call fcn.004c58cd
push 0x80000301
push 0
push eax
push 0x80000301
push 0
push 1
push 0x80000301
push 0
push dword [ebp - 8]
push 3
mov ebx, 0x288
call fcn.006082f0
add esp, 0x28
push 0x80000301
push 0
push 0x28
push 0x80000301
push 0
push dword [ebp - 8]
push 2
mov ebx, 0x294
call fcn.00605600
add esp, 0x1c
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x38]
push eax
mov ebx, dword [ebp - 0x10]
test ebx, ebx
je 0x50e7c2
push ebx
call fcn.005fffbe
add esp, 4
pop eax
mov dword [ebp - 0x10], eax
push reloc.wsock32.dll_getpeername
push 0
mov eax, dword [ebp - 0x10]
test eax, eax
jne 0x50e7d9
mov eax, 0x760403
push eax
push 1
mov ebx, 0x194
call fcn.006031d0
add esp, 0x10
mov dword [ebp - 0x3c], eax
cmp dword [ebp - 0x3c], 0x28
jne 0x50ef4f
mov dword [ebp - 0x38], esp
mov eax, dword [ebp - 0x10]
test eax, eax
je 0x50e806
add eax, 8
push eax
call dword [sym.imp.kernel32.dll_SetHandleCount]
nop
nop
nop
nop
cmp dword [ebp - 0x38], esp
je 0x50e823
push 6
call fcn.005fffca
add esp, 4
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x40], esp
push 0x28
push dword [ebp - 0x3c]
mov eax, dword [ebp - 0x14]
push eax
push 0x28
call fcn.005fffc4
add esp, 4
mov edi, eax
pop ebx
push eax
mov dword [ebp - 0x48], ebx
mov dword [ebp - 0x44], eax
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
call dword [sym.imp.kernel32.dll_RtlMoveMemory]
nop
nop
nop
nop
cmp dword [ebp - 0x40], esp
je 0x50e8d8
push 6
call fcn.005fffca
add esp, 4
mov ebx, dword [ebp - 0x44]
push ebx
mov edi, dword [ebp - 0x48]
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
call fcn.005fffbe
add esp, 4
mov ebx, dword [ebp - 0x14]
add ebx, 0x10
mov dword [ebp - 0x38], ebx
mov ebx, dword [ebp - 0x38]
cmp dword [ebx], 0
je 0x50ef4f
mov ebx, dword [ebp - 0x14]
add ebx, 0x10
mov dword [ebp - 0x38], ebx
mov ebx, dword [ebp - 0x14]
add ebx, 0x10
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
push dword [ebx]
call fcn.0050efa7
mov dword [ebp - 0x40], eax
mov ebx, dword [ebp - 0x38]
fild dword [ebx]
fstp qword [ebp - 0x48]
fld qword [ebp - 0x48]
fild dword [ebp - 0x40]
fstp qword [ebp - 0x50]
fsub qword [ebp - 0x50]
fstp qword [ebp - 0x58]
fld qword [ebp - 0x58]
call fcn.004c58cd
push 0x80000301
push 0
push eax
push 0x80000301
push 0
push 1
push 0x80000301
push 0
push dword [ebp - 8]
push 3
mov ebx, 0x288
call fcn.006082f0
add esp, 0x28
push reloc.wsock32.dll_connect
push 0
lea eax, [ebp - 0x18]
push eax
push 0x80000301
push 0
push dword [ebp - 8]
push 2
mov ebx, 0x2ac
call fcn.006086f0
add esp, 0x1c
mov ebx, dword [ebp - 0x14]
add ebx, 0x28
mov dword [ebp - 0x38], ebx
mov ebx, dword [ebp - 0x38]
push dword [ebx]
call fcn.0050efa7
mov dword [ebp - 0x1c], eax
mov ebx, dword [ebp - 0x14]
add ebx, 0x20
mov dword [ebp - 0x38], ebx
mov ebx, dword [ebp - 0x38]
push dword [ebx]
call fcn.0050efa7
mov dword [ebp - 0x20], eax
mov ebx, dword [ebp - 0x14]
add ebx, 0x1c
mov dword [ebp - 0x38], ebx
mov ebx, dword [ebp - 0x38]
mov eax, dword [ebx]
xor ecx, ecx
push eax
lea eax, [ebp - 0x24]
mov ebx, eax
pop eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
push eax
cmp ecx, eax
jg 0x50ef4c
mov ebx, dword [ebp - 0x14]
add ebx, 0x28
mov dword [ebp - 0x38], ebx
mov ebx, dword [ebp - 0x38]
fild dword [ebx]
fstp qword [ebp - 0x40]
fld qword [ebp - 0x40]
fild dword [ebp - 0x1c]
fstp qword [ebp - 0x48]
fsub qword [ebp - 0x48]
fstp qword [ebp - 0x50]
fild dword [ebp - 0x24]
fstp qword [ebp - 0x58]
fld qword [ebp - 0x58]
fmul qword [0x76041d]
fstp qword [ebp - 0x60]
fld qword [ebp - 0x50]
fadd qword [ebp - 0x60]
fstp qword [ebp - 0x68]
fld qword [ebp - 0x68]
fsub qword [0x76041d]
fstp qword [ebp - 0x70]
fld qword [ebp - 0x70]
call fcn.004c58cd
push 0x80000301
push 0
push eax
push 0x80000301
push 0
push 1
push 0x80000301
push 0
push dword [ebp - 8]
push 3
mov ebx, 0x288
call fcn.006082f0
add esp, 0x28
push 0x80000201
push 0
lea eax, [ebp - 0x28]
push eax
push 0x80000301
push 0
push dword [ebp - 8]
push 2
mov ebx, 0x2ac
call fcn.006086f0
add esp, 0x1c
mov ebx, dword [ebp - 0x14]
add ebx, 0x20
mov dword [ebp - 0x38], ebx
mov ebx, dword [ebp - 0x38]
fild dword [ebx]
fstp qword [ebp - 0x40]
fld qword [ebp - 0x40]
fild dword [ebp - 0x20]
fstp qword [ebp - 0x48]
fsub qword [ebp - 0x48]
fstp qword [ebp - 0x50]
mov eax, dword [ebp - 0x28]
cwde
mov dword [ebp - 0x58], eax
fild dword [ebp - 0x58]
fstp qword [ebp - 0x58]
fld qword [ebp - 0x58]
fmul qword [0x76044e]
fstp qword [ebp - 0x60]
fld qword [ebp - 0x50]
fadd qword [ebp - 0x60]
fstp qword [ebp - 0x68]
fld qword [ebp - 0x68]
call fcn.004c58cd
push 0x80000301
push 0
push eax
push 0x80000301
push 0
push 1
push 0x80000301
push 0
push dword [ebp - 8]
push 3
mov ebx, 0x288
call fcn.006082f0
add esp, 0x28
push 0x80000301
push 0
lea eax, [ebp - 0x2c]
push eax
push 0x80000301
push 0
push dword [ebp - 8]
push 2
mov ebx, 0x2ac
call fcn.006086f0
add esp, 0x1c
mov ebx, dword [ebp - 0x14]
add ebx, 0x24
mov dword [ebp - 0x38], ebx
mov ebx, dword [ebp - 0x14]
add ebx, 0x24
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
push dword [ebx]
call fcn.0050efa7
mov dword [ebp - 0x40], eax
mov ebx, dword [ebp - 0x38]
fild dword [ebx]
fstp qword [ebp - 0x48]
fld qword [ebp - 0x48]
fild dword [ebp - 0x40]
fstp qword [ebp - 0x50]
fsub qword [ebp - 0x50]
fstp qword [ebp - 0x58]
fild dword [ebp - 0x24]
fstp qword [ebp - 0x60]
fld qword [ebp - 0x60]
fmul qword [0x76044e]
fstp qword [ebp - 0x68]
fld qword [ebp - 0x58]
fadd qword [ebp - 0x68]
fstp qword [ebp - 0x70]
fld qword [ebp - 0x70]
fsub qword [0x76044e]
fstp qword [ebp - 0x78]
fld qword [ebp - 0x78]
call fcn.004c58cd
push 0x80000301
push 0
push eax
push 0x80000301
push 0
push 1
push 0x80000301
push 0
push dword [ebp - 8]
push 3
mov ebx, 0x288
call fcn.006082f0
add esp, 0x28
push 0x80000301
push 0
lea eax, [ebp - 0x30]
push eax
push 0x80000301
push 0
push dword [ebp - 8]
push 2
mov ebx, 0x2ac
call fcn.006086f0
add esp, 0x1c
push dword [ebp - 0x30]
call fcn.0050efa7
mov dword [ebp - 0x38], eax
fild dword [ebp - 0x30]
fstp qword [ebp - 0x40]
fld qword [ebp - 0x40]
fild dword [ebp - 0x38]
fstp qword [ebp - 0x48]
fsub qword [ebp - 0x48]
fstp qword [ebp - 0x50]
fld qword [ebp - 0x50]
call fcn.004c58cd
push 0x80000301
push 0
push eax
push 0x80000301
push 0
push 1
push 0x80000301
push 0
push dword [ebp - 8]
push 3
mov ebx, 0x288
call fcn.006082f0
add esp, 0x28
push reloc.wsock32.dll_connect
push 0
lea eax, [ebp - 0x18]
push eax
push 0x80000301
push 0
push dword [ebp - 8]
push 2
mov ebx, 0x2ac
call fcn.006086f0
add esp, 0x1c
mov dword [ebp - 0x38], esp
push dword [ebp - 0x18]
push dword [ebp - 4]
call dword [sym.imp.kernel32.dll_GetProcAddress]
nop
nop
nop
nop
cmp dword [ebp - 0x38], esp
je 0x50ecf9
push 6
call fcn.005fffca
add esp, 4
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x34], 0
je 0x50ed50
push 0x80000301
push 0
push 2
push 0x80000301
push 0
push dword [ebp - 0x34]
push 2
mov ebx, 0x910
call fcn.00601210
add esp, 0x1c
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x38]
push eax
mov ebx, dword [ebp - 0x10]
test ebx, ebx
je 0x50ed45
push ebx
call fcn.005fffbe
add esp, 4
pop eax
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xc], 1
mov ebx, dword [ebp - 0x10]
call fcn.004c6a80
mov eax, 0
cmp eax, ecx
jl 0x50ed6e
push 1
call fcn.005fffca
add esp, 4
add ebx, eax
mov dword [ebp - 0x38], ebx
push 0x80000101
push 0
mov ebx, dword [ebp - 0x38]
mov al, byte [ebx]
push eax
push 1
mov ebx, 0x198
call fcn.00603380
add esp, 0x10
mov dword [ebp - 0x3c], eax
mov eax, 0x76542c
xor ecx, ecx
test eax, eax
je 0x50eda3
mov ecx, dword [eax + 4]
push ecx
add eax, 8
push eax
mov eax, dword [ebp - 0x3c]
xor ebx, ebx
test eax, eax
je 0x50edb4
mov ebx, dword [eax + 4]
add eax, 8
push eax
cmp ebx, ecx
mov eax, 1
jne 0x50edcb
dec eax
test ecx, ecx
je 0x50edcb
call fcn.004cd539
add esp, 0xc
test eax, eax
mov eax, 0
sete al
mov dword [ebp - 0x40], eax
mov ebx, dword [ebp - 0x3c]
test ebx, ebx
je 0x50edeb
push ebx
call fcn.005fffbe
add esp, 4
cmp dword [ebp - 0x40], 0
jne 0x50ee3a
mov eax, 0x77f434
xor ecx, ecx
test eax, eax
je 0x50ee03
mov ecx, dword [eax + 4]
push ecx
add eax, 8
push eax
mov eax, dword [ebp - 0x10]
xor ebx, ebx
test eax, eax
je 0x50ee14
mov ebx, dword [eax + 4]
add eax, 8
push eax
cmp ebx, ecx
mov eax, 1
jne 0x50ee2b
dec eax
test ecx, ecx
je 0x50ee2b
call fcn.004cd539
add esp, 0xc
test eax, eax
je 0x50ee3a
xor eax, eax
jmp 0x50ee3f
mov eax, 1
test eax, eax
je 0x50ef44
push dword [ebp + 0xc]
push 4
mov eax, 2
call fcn.006010d0
add esp, 8
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x38], eax
mov ebx, dword [ebp + 0xc]
mov ebx, dword [ebx]
mov dword [ebp - 0x3c], ebx
call fcn.004c6a80
mov dword [ebp - 0x40], ecx
mov edi, dword [ebp - 0x3c]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x50ee8b
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x40]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x3c]
call fcn.005fffe2
add esp, 8
mov ebx, dword [ebp + 0xc]
mov dword [ebx], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x40]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x38]
push edi
test eax, eax
je 0x50eed0
push eax
mov ebx, eax
call fcn.004c561b
inc eax
push eax
call fcn.005fffc4
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
mov dword [edi], eax
push dword [ebp + 0x10]
push 4
mov eax, 2
call fcn.006010d0
add esp, 8
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x38], eax
mov ebx, dword [ebp + 0x10]
mov ebx, dword [ebx]
mov dword [ebp - 0x3c], ebx
call fcn.004c6a80
mov dword [ebp - 0x40], ecx
mov edi, dword [ebp - 0x3c]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x50ef17
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x40]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x3c]
call fcn.005fffe2
add esp, 8
mov ebx, dword [ebp + 0x10]
mov dword [ebx], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x40]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x38]
mov dword [edi], eax
pop eax
pop ebx
pop ecx
jmp 0x50ea44
add esp, 0xc
push 0x80000301
push 0
push dword [ebp - 8]
push 1
mov ebx, 0x278
call fcn.006056e0
add esp, 0x10
mov eax, dword [ebp - 0xc]
jmp 0x50ef73
push eax
mov ebx, dword [ebp - 0x10]
test ebx, ebx
je 0x50ef84
push ebx
call fcn.005fffbe
add esp, 4
mov ebx, dword [ebp - 0x14]
push ebx
call fcn.005fffbe
add esp, 4
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x50efa0
push ebx
call fcn.005fffbe
add esp, 4
pop eax
mov esp, ebp
pop ebp
ret 0xc