Function at 0x40515f
Capabilities:
Access peb ldr_data

Disassembly:
push ebp
mov ebp, esp
push esi
sub esp, 0x270
mov eax, dword [ebp + 8]
mov dword [ebp - 0xc], eax
mov dword [ebp - 0x10], 0
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x224], 0x35c7c6d6
mov eax, dword [ebp - 0x224]
mov ecx, eax
sub ecx, 0x558534b
mov dword [ebp - 0x228], eax
mov dword [ebp - 0x22c], ecx
jg 0x4051c8
jmp 0x4051ac
mov eax, dword [ebp - 0x228]
sub eax, 0xec14f075
mov dword [ebp - 0x230], eax
je 0x4054aa
jmp 0x40536c
mov eax, dword [ebp - 0x228]
sub eax, 0x643a770f
mov dword [ebp - 0x234], eax
jg 0x405350
jmp 0x4051e4
mov eax, dword [ebp - 0x228]
sub eax, 0x5d5ce069
mov dword [ebp - 0x238], eax
jg 0x405334
jmp 0x405200
mov eax, dword [ebp - 0x228]
sub eax, 0x43430a0b
mov dword [ebp - 0x23c], eax
jg 0x405318
jmp 0x40521c
mov eax, dword [ebp - 0x228]
sub eax, 0xa6d7890
mov dword [ebp - 0x240], eax
jg 0x405254
jmp 0x405238
mov eax, dword [ebp - 0x228]
sub eax, 0x558534c
mov dword [ebp - 0x244], eax
je 0x40547d
jmp 0x40536c
mov eax, dword [ebp - 0x228]
sub eax, 0x102adbda
mov dword [ebp - 0x248], eax
jg 0x40528c
jmp 0x405270
mov eax, dword [ebp - 0x228]
sub eax, 0xa6d7891
mov dword [ebp - 0x24c], eax
je 0x405494
jmp 0x40536c
mov eax, dword [ebp - 0x228]
sub eax, 0x154c37d4
mov dword [ebp - 0x250], eax
jg 0x4052c4
jmp 0x4052a8
mov eax, dword [ebp - 0x228]
sub eax, 0x102adbdb
mov dword [ebp - 0x254], eax
je 0x4053bc
jmp 0x40536c
mov eax, dword [ebp - 0x228]
sub eax, 0x154c37d5
mov dword [ebp - 0x258], eax
je 0x405465
jmp 0x4052e0
mov eax, dword [ebp - 0x228]
sub eax, 0x32e94691
mov dword [ebp - 0x25c], eax
je 0x4053e0
jmp 0x4052fc
mov eax, dword [ebp - 0x228]
sub eax, 0x35c7c6d6
mov dword [ebp - 0x260], eax
je 0x405371
jmp 0x40536c
mov eax, dword [ebp - 0x228]
sub eax, 0x43430a0c
mov dword [ebp - 0x264], eax
je 0x40540e
jmp 0x40536c
mov eax, dword [ebp - 0x228]
sub eax, 0x5d5ce06a
mov dword [ebp - 0x268], eax
je 0x405430
jmp 0x40536c
mov eax, dword [ebp - 0x228]
sub eax, 0x643a7710
mov dword [ebp - 0x26c], eax
je 0x405393
jmp 0x40536c
jmp 0x4054b6
mov eax, 0x32e94691
mov ecx, 0x643a7710
mov edx, dword [ebp - 0x14]
mov esi, dword [ebp - 0xc]
cmp byte [esi + edx], 0
cmovne eax, ecx
mov dword [ebp - 0x224], eax
jmp 0x4054b6
mov eax, dword [ebp - 0xc]
mov ecx, dword [ebp - 0x14]
mov dl, byte [eax + ecx]
movsx eax, dl
mov si, ax
mov eax, dword [ebp - 0x14]
mov word [ebp + eax*2 - 0x21e], si
mov dword [ebp - 0x224], 0x102adbdb
jmp 0x4054b6
mov eax, dword [ebp - 0x14]
sub eax, 0x50b0cc43
add eax, 1
add eax, 0x50b0cc43
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x224], 0x35c7c6d6
jmp 0x4054b6
mov eax, dword [ebp - 0x14]
mov word [ebp + eax*2 - 0x21e], 0
mov eax, dword fs:[0x18]
mov eax, dword [eax + 0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x224], 0x43430a0c
jmp 0x4054b6
mov eax, 0xa6d7891
mov ecx, 0x5d5ce06a
mov edx, dword [ebp - 0x10]
cmp dword [edx + 0x18], 0
cmovne eax, ecx
mov dword [ebp - 0x224], eax
jmp 0x4054b6
lea eax, [ebp - 0x21e]
mov ecx, dword [ebp - 0x10]
mov ecx, dword [ecx + 0x30]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.0040951f
mov ecx, 0x558534c
mov edx, 0x154c37d5
cmp eax, 0
cmove ecx, edx
mov dword [ebp - 0x224], ecx
jmp 0x4054b6
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x18]
mov dword [ebp - 8], eax
mov dword [ebp - 0x224], 0xec14f075
jmp 0x4054b6
mov eax, dword [ebp - 0x10]
mov eax, dword [eax]
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x224], 0x43430a0c
jmp 0x4054b6
mov dword [ebp - 8], 0
mov dword [ebp - 0x224], 0xec14f075
jmp 0x4054b6
mov eax, dword [ebp - 8]
add esp, 0x270
pop esi
pop ebp
ret
jmp 0x405187