Function at 0x4743c0
Capabilities:
Access peb ldr_data

Disassembly:
mov eax, dword fs:[0]
push 0xffffffffffffffff
push 0x4b2260
push eax
mov dword fs:[0], esp
sub esp, 0x1c
push ebp
push esi
push edi
mov esi, ecx
push 1
call fcn.004738e0
test al, al
je 0x4743fe
pop edi
pop esi
xor al, al
pop ebp
mov ecx, dword [esp + 0x1c]
mov dword fs:[0], ecx
add esp, 0x28
ret 0x10
mov al, byte [esi + 0x15c]
test al, al
je 0x47441e
pop edi
pop esi
xor al, al
pop ebp
mov ecx, dword [esp + 0x1c]
mov dword fs:[0], ecx
add esp, 0x28
ret 0x10
mov eax, dword [esi + 0xa4]
xor ebp, ebp
cmp eax, ebp
je 0x47444a
mov al, byte [esi + 0xd0]
test al, al
jne 0x47444a
pop edi
pop esi
xor al, al
pop ebp
mov ecx, dword [esp + 0x1c]
mov dword fs:[0], ecx
add esp, 0x28
ret 0x10
mov eax, dword [esi + 0x110]
cmp eax, 0xffff
jne 0x47446d
pop edi
pop esi
xor al, al
pop ebp
mov ecx, dword [esp + 0x1c]
mov dword fs:[0], ecx
add esp, 0x28
ret 0x10
mov edi, dword [esp + 0x40]
mov dword [esp + 0x14], ebp
cmp edi, ebp
je 0x4744be
lea eax, [esp + 0x14]
push eax
push edi
call fcn.0047bcd0
add esp, 8
test al, al
jne 0x47449f
pop edi
pop esi
pop ebp
mov ecx, dword [esp + 0x1c]
mov dword fs:[0], ecx
add esp, 0x28
ret 0x10
lea ecx, [esp + 0x10]
push ecx
push edi
call fcn.0047bcf0
add esp, 8
test al, al
jne 0x4744be
push ebp
call fcn.00491d59
add esp, 4
mov dword [esp + 0x10], eax
mov edx, dword [esi + 0x74]
push ebp
push edx
lea ecx, [esi + 0x78]
call fcn.00478170
cmp edi, ebp
je 0x4744ee
mov edi, dword [esp + 0x38]
lea eax, [esp + 0x10]
push eax
mov ecx, edi
call fcn.0047d750
mov ecx, dword [esp + 0x14]
push ecx
push edi
mov ecx, esi
call fcn.004769a0
jmp 0x474503
mov edi, dword [esp + 0x38]
mov eax, dword [esi + 0x168]
xor edx, edx
mov dl, byte [edi + 8]
mov dh, al
mov word [edi + 8], dx
lea eax, [esp + 0xc]
mov ecx, edi
push eax
call fcn.0047db00
mov ecx, edi
mov dword [esp + 0x30], ebp
call fcn.0047db80
test al, al
mov byte [esp + 0x38], al
je 0x474555
mov ecx, dword [esp + 0xc]
mov eax, dword [ecx - 8]
cmp eax, ebp
je 0x474539
mov al, byte [eax + ecx - 1]
cmp al, 0x5c
je 0x474555
cmp al, 0x2f
je 0x474555
mov cl, byte [0x4b7870]
push ecx
lea ecx, [esp + 0x10]
call fcn.004a6f1c
mov edx, dword [esp + 0xc]
mov ecx, edi
push edx
call fcn.0047dae0
mov eax, dword [esp + 0xc]
cmp dword [eax - 8], ebp
jne 0x474583
mov eax, dword [esi + 0x110]
lea ecx, [esp + 0xc]
push eax
push str.file_i
push ecx
call fcn.004a1aae
mov edx, dword [esp + 0x18]
add esp, 0xc
mov ecx, edi
push edx
call fcn.0047dae0
push ebx
lea eax, [edi + 0x38]
push 1
push eax
call fcn.0047c1e0
mov eax, dword [esi + 0x194]
add esp, 8
cmp eax, ebp
mov eax, dword [esp + 0x40]
mov ecx, eax
setne byte [esp + 0x1c]
and ecx, 0xffff
or edx, 0xffffffff
cmp ecx, 0x100
mov dword [esp + 0x44], edx
sete bl
test bl, bl
je 0x4745d1
mov ecx, eax
movsx eax, al
sar ecx, 0x10
mov dword [esp + 0x44], ecx
mov dword [esp + 0x40], eax
jmp 0x4745d5
mov dword [esp + 0x48], ebp
cmp eax, edx
jl 0x4745de
cmp eax, 9
jle 0x4745e4
mov dword [esp + 0x40], edx
mov eax, edx
cmp dword [esi + 0xa4], ebp
jne 0x4745f0
xor ecx, ecx
jmp 0x4745fe
mov cl, byte [esi + 0xd0]
neg cl
sbb ecx, ecx
and ecx, 2
dec ecx
mov edx, dword [esp + 0x1c]
cmp ecx, 1
sete cl
push edx
push ecx
push eax
mov ecx, edi
call fcn.0047d960
test al, al
jne 0x474620
push ebp
push 0x6d
mov ecx, esi
call fcn.00473920
test bl, bl
je 0x474657
push 1
mov ecx, edi
call fcn.0047da90
mov ecx, dword [esp + 0x48]
add ecx, eax
mov al, byte [edi + 0xc]
test al, 1
mov dword [esp + 0x48], ecx
je 0x474647
mov eax, ecx
add eax, 0xc
mov dword [esp + 0x48], eax
mov dl, byte [edi + 0xc]
shr dl, 3
test dl, 1
je 0x474657
add dword [esp + 0x48], 0x10
mov eax, dword [esp + 0x44]
lea ebp, [esi + 0xdc]
push eax
push edi
mov ecx, ebp
call fcn.00478c40
test bl, bl
je 0x474684
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x48]
mov eax, dword [esp + 0x44]
push ecx
push edx
push eax
mov ecx, esi
call fcn.004777e0
mov al, byte [esi + 0x11c]
mov cl, byte [ebp + 0x40]
cmp al, cl
jne 0x4746a2
mov eax, dword [ebp + 0x20]
xor ebp, ebp
push ebp
push eax
call fcn.0047c170
add esp, 8
jmp 0x4746a4
xor ebp, ebp
lea ebx, [esi + 0x84]
mov ecx, esi
push ebx
call fcn.00473d40
mov ecx, eax
call fcn.0047d800
mov al, byte [esi + 0x11c]
test al, al
je 0x4746d6
mov ecx, dword [esp + 0x10]
push ecx
mov ecx, esi
call fcn.00473d40
mov ecx, eax
call fcn.0047dae0
mov al, byte [esp + 0x1c]
test al, al
je 0x474722
push ebp
push 0xc
lea ecx, [esp + 0x28]
call fcn.00478100
xor eax, eax
lea edx, [esp + 0x20]
mov ax, word [edi + 0x10]
push edx
shl eax, 0x10
push eax
mov ecx, esi
mov byte [esp + 0x3c], 1
call fcn.00476610
mov ecx, dword [esp + 0x24]
push ebp
push 0xc
push ecx
mov ecx, ebx
call fcn.0047b590
lea ecx, [esp + 0x20]
mov byte [esp + 0x34], 0
call fcn.00478130
mov dword [esi + 0x6c], ebp
mov dword [esi + 0x34], ebp
mov eax, dword [esi + 0x80]
pop ebx
mov dword [esi + 0x40], eax
mov eax, dword [esi + 0x7c]
mov dword [esi + 0x3c], eax
mov al, byte [esp + 0x38]
test al, al
mov dword [esi + 0x38], ebp
mov dword [esi + 0x44], ebp
je 0x47475e
mov ecx, esi
call fcn.00473d40
cmp word [eax + 0xe], bp
je 0x47475e
mov ecx, esi
call fcn.00473d40
mov word [eax + 0xe], bp
mov ecx, esi
call fcn.00473d40
cmp word [eax + 0xe], 8
jne 0x4747aa
mov al, byte [esi + 0x188]
test al, al
je 0x47477e
lea eax, [esi + 0x16c]
jmp 0x474780
xor eax, eax
mov edx, dword [esp + 0x3c]
push 0x38
push str.1.1.4
push ebp
push 8
mov dword [esi + 0x58], eax
push 0xfffffffffffffff1
push 8
lea eax, [esi + 0x30]
push edx
push eax
call fcn.0047dcd0
add esp, 0x20
mov ecx, esi
push eax
call fcn.00473d20
lea ecx, [esp + 0xc]
mov byte [esi + 0x15c], 1
mov dword [esp + 0x30], 0xffffffff
call fcn.004a6b19
mov ecx, dword [esp + 0x28]
pop edi
pop esi
mov al, 1
pop ebp
mov dword fs:[0], ecx
add esp, 0x28
ret 0x10