Function at 0x4337a0
Capabilities:
Access peb ldr_data

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4f84d3
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0xc38
mov eax, dword [0x534090]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov dword [ebp - 0xc3c], edi
mov dword [ebp - 0xc44], edi
mov esi, dword [ebx + 8]
mov dword [ebp - 0xc48], edi
mov dword [edi + 4], 0
mov dword [edi + 8], 2
mov dword [edi + 0xc], 0
mov dword [edi + 0x10], 0
xor eax, eax
mov dword [edi + 0x20], 0
mov dword [edi + 0x24], 7
mov word [edi + 0x10], ax
mov dword [ebp - 4], 1
lea ecx, [edi + 0x3c]
mov dword [edi + 0x34], eax
lea eax, [edi + 0x38]
push 0x20
push 0x51417c
mov dword [edi + 0x28], 0xffffffff
mov dword [edi + 0x2c], 0xffffffff
mov dword [edi + 0x30], 2
mov dword [eax], 0
mov dword [ecx], 0x54534348
mov dword [edi + 0x40], 0
mov dword [edi + 0x44], 0
mov dword [edi + 0x48], 0
mov dword [edi], eax
push 0x514140
mov dword [edi + 4], ecx
call fcn.004d0428
add esp, 0xc
mov dword [ebp - 0xc40], eax
test eax, eax
jne 0x433922
push 0x400
lea eax, [ebp - 0xc18]
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
test eax, eax
je 0x433b6c
call dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
jne 0x433b6c
lea eax, [ebp - 0xc18]
push 0x5c
push eax
call fcn.004ccdd3
add esp, 8
test eax, eax
je 0x433b6c
xor ecx, ecx
push str.dbg_trace.ini
mov word [eax + 2], cx
lea eax, [ebp - 0xc18]
push 0x400
push eax
call fcn.004d678e
add esp, 0xc
lea eax, [ebp - 0xc18]
push 0x20
push 0x51417c
push eax
call fcn.004d0428
add esp, 0xc
mov dword [ebp - 0xc40], eax
test eax, eax
je 0x433b6c
mov eax, 1
jmp 0x433924
xor eax, eax
push 0x400
mov dword [edi + 8], eax
lea eax, [ebp - 0x418]
push 0
push eax
call fcn.004cd810
add esp, 0xc
mov byte [ebp - 0xc31], 0
test esi, esi
mov byte [ebp - 0xc32], 0
mov eax, str.BDREINIT
cmovne eax, esi
mov esi, eax
mov dword [ebp - 0xc44], eax
lea ecx, [esi + 1]
mov al, byte [esi]
inc esi
test al, al
jne 0x433960
push dword [ebp - 0xc40]
lea eax, [ebp - 0x418]
sub esi, ecx
push 0x3ff
push eax
mov dword [ebp - 0xc38], esi
call fcn.004d6783
add esp, 0xc
test eax, eax
je 0x433b5e
push esi
push dword [ebp - 0xc44]
lea eax, [ebp - 0x418]
push eax
call fcn.004d658a
add esp, 0xc
test eax, eax
je 0x433d37
push 1
lea eax, [ebp - 0x418]
push 0x514180
push eax
call fcn.004d658a
add esp, 0xc
test eax, eax
je 0x433d37
push 3
lea eax, [ebp - 0x418]
push 0x514184
push eax
call fcn.004d658a
add esp, 0xc
test eax, eax
lea eax, [ebp - 0x418]
jne 0x433a19
push 0x3d
push eax
call fcn.004cd0f0
add esp, 8
test eax, eax
je 0x433b3c
mov ecx, dword [edi + 4]
mov edx, dword [ecx]
test edx, edx
je 0x433b3c
mov eax, dword [eax + 1]
xor eax, edx
mov dword [ecx], eax
jmp 0x433b3c
push 4
push str.root
push eax
call fcn.004d658a
add esp, 0xc
test eax, eax
lea eax, [ebp - 0x418]
jne 0x433b8e
push 0x3d
push eax
call fcn.004cd0f0
mov ecx, eax
add esp, 8
test ecx, ecx
je 0x433b3c
mov al, byte [ecx + 1]
inc ecx
mov edx, ecx
cmp al, 0xa
je 0x433a66
cmp al, 0xd
je 0x433a66
test al, al
je 0x433a66
mov al, byte [ecx + 1]
inc ecx
cmp al, 0xa
jne 0x433a56
mov byte [ecx], 0
lea ecx, [ebp - 0xc30]
call fcn.00435310
mov esi, dword [ebp - 0xc3c]
mov edi, eax
add esi, 0x10
cmp esi, edi
je 0x433af0
mov ecx, dword [esi + 0x14]
cmp ecx, 8
jb 0x433abc
mov eax, dword [esi]
lea ecx, [ecx*2 + 2]
cmp ecx, 0x1000
jb 0x433ab2
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x433d85
mov eax, edx
push ecx
push eax
call fcn.004cb66f
add esp, 8
xor eax, eax
mov word [esi], ax
mov dword [esi + 0x10], eax
mov dword [esi + 0x14], 7
movups xmm0, xmmword [edi]
movups xmmword [esi], xmm0
movq xmm0, qword [edi + 0x10]
movq qword [esi + 0x10], xmm0
mov dword [edi + 0x10], eax
mov dword [edi + 0x14], 7
mov word [edi], ax
mov byte [ebp - 4], 1
nop dword [eax]
mov edx, dword [ebp - 0xc1c]
cmp edx, 8
jb 0x433b30
mov ecx, dword [ebp - 0xc30]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x433b26
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x433d85
push edx
push ecx
call fcn.004cb66f
add esp, 8
mov edi, dword [ebp - 0xc3c]
mov esi, dword [ebp - 0xc38]
push dword [ebp - 0xc40]
lea eax, [ebp - 0x418]
push 0x3ff
push eax
call fcn.004d6783
add esp, 0xc
test eax, eax
jne 0x433991
push dword [ebp - 0xc40]
call fcn.004d4e96
add esp, 4
mov eax, edi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.004cb63e
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret 4
push 4
push str.size
push eax
call fcn.004d658a
add esp, 0xc
test eax, eax
lea eax, [ebp - 0x418]
jne 0x433c80
push 0x3d
push eax
call fcn.004cd0f0
mov esi, eax
add esp, 8
test esi, esi
je 0x433b36
lea eax, [ebp - 0x418]
push 0x2e
push eax
call fcn.004cd0f0
mov ecx, eax
add esp, 8
test ecx, ecx
je 0x433c00
inc ecx
mov byte [esi], 0
mov eax, esi
sub eax, ecx
push eax
push str.BDREINIT
push ecx
call fcn.004d658a
add esp, 0xc
test eax, eax
jne 0x433b36
mov byte [ebp - 0xc31], 1
jmp 0x433c0d
cmp byte [ebp - 0xc31], 0
jne 0x433b36
mov al, byte [esi + 1]
inc esi
mov edx, esi
cmp al, 0x30
jl 0x433c35
mov cl, al
nop dword [eax]
mov al, cl
cmp cl, 0x39
ja 0x433c35
test cl, cl
je 0x433c35
mov al, byte [esi + 1]
inc esi
mov cl, al
cmp al, 0x30
jge 0x433c20
mov edi, 1
cmp al, 0x4b
jne 0x433c45
mov edi, 0x400
jmp 0x433c59
cmp al, 0x4d
jne 0x433c50
mov edi, 0x100000
jmp 0x433c59
cmp al, 0x47
jne 0x433c59
mov edi, 0x40000000
push edx
mov byte [esi], 0
call fcn.004d6567
add esp, 4
push 0
push edi
push edx
push eax
call fcn.004cc160
mov edi, dword [ebp - 0xc3c]
mov dword [edi + 0x28], eax
mov dword [edi + 0x2c], edx
jmp 0x433b36
push 6
push str.number
push eax
call fcn.004d658a
add esp, 0xc
test eax, eax
jne 0x433b3c
lea eax, [ebp - 0x418]
push 0x3d
push eax
call fcn.004cd0f0
mov esi, eax
add esp, 8
test esi, esi
je 0x433b36
lea eax, [ebp - 0x418]
push 0x2e
push eax
call fcn.004cd0f0
mov ecx, eax
add esp, 8
test ecx, ecx
je 0x433cf2
inc ecx
mov byte [esi], 0
mov eax, esi
sub eax, ecx
push eax
push str.BDREINIT
push ecx
call fcn.004d658a
add esp, 0xc
test eax, eax
jne 0x433b36
mov byte [ebp - 0xc32], 1
jmp 0x433cff
cmp byte [ebp - 0xc32], 0
jne 0x433b36
mov al, byte [esi + 1]
inc esi
mov ecx, esi
cmp al, 0x30
jl 0x433d20
nop dword [eax]
cmp al, 0x39
ja 0x433d20
test al, al
je 0x433d20
mov al, byte [esi + 1]
inc esi
cmp al, 0x30
jge 0x433d10
push ecx
mov byte [esi], 0
call fcn.004d6567
add esp, 4
mov dword [edi + 0x30], eax
mov dword [edi + 0x34], edx
jmp 0x433b36
lea eax, [ebp - 0x418]
push 0x3d
push eax
call fcn.004cd0f0
mov ecx, eax
add esp, 8
test ecx, ecx
je 0x433b3c
mov al, byte [ecx + 1]
inc ecx
mov edx, ecx
cmp al, 0x30
jl 0x433d70
nop dword [eax]
cmp al, 0x39
ja 0x433d70
test al, al
je 0x433d70
mov al, byte [ecx + 1]
inc ecx
cmp al, 0x30
jge 0x433d60
push edx
mov byte [ecx], 0
call fcn.004d6544
mov ecx, dword [edi]
add esp, 4
mov dword [ecx], eax
jmp 0x433b3c
call fcn.004d05ef
int3