Function at 0x51ff93
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x5b4876
mov eax, dword fs:[0]
push eax
sub esp, 0x150
mov eax, dword [0x5f4748]
xor eax, esp
mov dword [esp + 0x148], eax
push ebx
push esi
push edi
mov eax, dword [0x5f4748]
xor eax, esp
push eax
lea eax, [esp + 0x160]
mov dword fs:[0], eax
mov dword [esp + 0x118], edx
mov esi, ecx
mov eax, dword [ebp + 8]
lea edi, [esp + 0x134]
mov dword [esp + 0x110], eax
lea edx, [esp + 0x4c]
xor eax, eax
mov dword [esp + 0x4c], 0x7659694d
stosd dword es:[edi], eax
xor ebx, ebx
push ebx
sub esp, 0xc
mov dword [esp + 0x60], 0x35636a4f
mov ecx, esp
mov dword [esp + 0x64], 0x4473514b
stosd dword es:[edi], eax
mov dword [esp + 0x68], 0x33356950
push ecx
mov dword [esp + 0x70], 0x3741784c
stosd dword es:[edi], eax
mov dword [esp + 0x74], 0x47306a49
mov dword [esp + 0x78], 0x4734434c
mov dword [esp + 0x7c], 0x3652414c
stosd dword es:[edi], eax
lea eax, [esp + 0x11e]
push eax
push edx
mov dword [esp + 0x88], 0x4b676861
mov dword [esp + 0x8c], 0x79417946
mov dword [esp + 0x90], 0x3841544a
mov dword [esp + 0x94], 0x65514447
mov dword [esp + 0x98], 0x69514849
mov dword [esp + 0x9c], 0x67595249
mov dword [esp + 0xa0], 0x6b674342
mov dword [esp + 0xa4], 0x51735245
mov dword [esp + 0xa8], 0x35775441
mov dword [esp + 0xac], 0x59594165
mov dword [esp + 0xb0], 0x34686e4f
mov dword [esp + 0xb4], 0x6b4a4241
mov dword [esp + 0xb8], 0x55385243
mov dword [esp + 0xbc], 0x43777a49
mov dword [esp + 0xc0], 0x464d6e66
mov dword [esp + 0xc4], 0x486b514c
mov dword [esp + 0xc8], 0x46387a4a
mov dword [esp + 0xcc], 0x44596949
mov dword [esp + 0xd0], 0x53416744
mov dword [esp + 0xd4], 0x716b4465
mov dword [esp + 0xd8], 0x746b544e
mov dword [esp + 0xdc], 0x39776a50
mov dword [esp + 0xe0], 0x36464143
mov dword [esp + 0xe4], 0x494d6a65
mov dword [esp + 0xe8], 0x31457848
mov dword [esp + 0xec], 0x7a566747
mov dword [esp + 0xf0], 0x6951524a
mov dword [esp + 0xf4], 0x7777424b
mov dword [esp + 0xf8], 0x6238515a
mov dword [esp + 0xfc], 0x2b745441
mov dword [esp + 0x100], 0x536b484d
mov dword [esp + 0x104], 0x33515463
mov dword [esp + 0x108], 0x35597842
mov dword [esp + 0x10c], 0x76737a50
mov dword [esp + 0x110], 0x4755534b
mov dword [esp + 0x114], 0x31784142
mov dword [esp + 0x118], 0x56555147
mov dword [esp + 0x11c], 0x466f5361
mov dword [esp + 0x120], 0x41414141
mov word [esp + 0x124], 0x5168
call fcn.00450208
lea ecx, [esp + 0x138]
call fcn.005300dd
add esp, 0xc
mov ecx, eax
mov dword [esp + 0x16c], ebx
call fcn.00451547
push ebx
push eax
mov ecx, esi
call fcn.0043d462
push eax
lea ecx, [esp + 0x138]
call fcn.00439543
lea ecx, [esp + 0x128]
mov byte [esp + 0x168], 2
call fcn.004513e1
xor eax, eax
mov dword [esp + 0x10], 0x3973544a
lea edi, [esp + 0x144]
mov dword [esp + 0x14], 0x74417a4c
stosd dword es:[edi], eax
lea edx, [esp + 0x10]
push ebx
sub esp, 0xc
mov dword [esp + 0x28], 0x3234784b
mov ecx, esp
mov dword [esp + 0x2c], 0x784d794b
stosd dword es:[edi], eax
mov dword [esp + 0x30], 0x68386a4c
push ecx
mov dword [esp + 0x38], 0x79426a48
stosd dword es:[edi], eax
mov dword [esp + 0x3c], 0x2b644762
mov dword [esp + 0x40], 0x58385141
mov dword [esp + 0x44], 0x55553348
stosd dword es:[edi], eax
lea eax, [esp + 0x60]
push eax
push edx
mov dword [esp + 0x50], 0x636b6848
mov dword [esp + 0x54], 0x3267424a
mov dword [esp + 0x58], 0x6d674143
mov dword [esp + 0x5c], 0x3167514f
mov dword [esp + 0x60], 0x4145434f
mov dword [esp + 0x64], 0x61414141
call fcn.00450208
lea ecx, [esp + 0x12c]
call fcn.005300dd
add esp, 0xc
mov ecx, eax
mov byte [esp + 0x16c], 3
call fcn.00451547
push ebx
push eax
mov ecx, esi
call fcn.0043d462
push eax
lea ecx, [esp + 0x148]
call fcn.00439543
lea ecx, [esp + 0x11c]
mov byte [esp + 0x168], 5
call fcn.004513e1
mov esi, dword [esp + 0x118]
or dword [esi], 0xffffffff
cmp byte [esp + 0x14c], bl
je 0x520363
cmp byte [esp + 0x14c], 1
jne 0x520363
lea ecx, [esp + 0x144]
call fcn.0043a2a4
mov ecx, dword [esp + 0x110]
mov dword [ecx], eax
jmp 0x52036d
mov ecx, dword [esp + 0x110]
or dword [ecx], 0xffffffff
cmp byte [esp + 0x13c], 0
je 0x520398
cmp byte [esp + 0x13c], 1
jne 0x52039a
lea ecx, [esp + 0x134]
call fcn.0043a2a4
mov dword [esi], eax
test eax, eax
je 0x520398
cmp eax, 2
jne 0x52039a
mov bl, 1
lea ecx, [esp + 0x144]
mov byte [esp + 0x168], 2
call fcn.00439697
or dword [esp + 0x168], 0xffffffff
lea ecx, [esp + 0x134]
call fcn.00439697
mov al, bl
mov ecx, dword [esp + 0x160]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x148]
xor ecx, esp
call fcn.0054d1e7
mov esp, ebp
pop ebp
ret