Function at 0x5c4660
Capabilities:
Access peb ldr_data

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x66b30f
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0xf4
push ebx
push esi
xor ebx, ebx
push edi
lea ecx, [esp + 0xec]
mov dword [esp + 0xfc], ebx
call fcn.004c50a0
mov eax, dword [ebp + 0xc]
mov dword [esp + 0x108], 1
fld dword [eax + 4]
fsub dword [eax]
fld dword [eax + 0xc]
fsub dword [eax + 8]
mov ecx, dword [eax + 8]
mov edx, ecx
mov dword [esp + 0x2c], ecx
fld st(0)
fmul dword [0x6b402c]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x44], ecx
fadd dword [eax + 8]
fstp dword [esp + 0x3c]
fld st(1)
fmul dword [0x6b4028]
fadd dword [eax]
fstp dword [esp + 0x1c]
fld st(0)
fmul dword [0x680c70]
fadd dword [eax + 8]
fstp dword [esp + 0x38]
fld st(1)
fmul dword [0x6b4024]
fadd dword [eax]
fstp dword [esp + 0x34]
fld st(1)
fmul dword [0x68ba70]
fadd dword [eax]
fstp dword [esp + 0x24]
fld st(0)
fmul dword [0x6b4020]
fadd dword [eax + 8]
fstp dword [esp + 0x28]
fld st(1)
fmul dword [0x6b401c]
fadd dword [eax]
fstp dword [esp + 0x30]
fld st(0)
fmul dword [0x6b4018]
fadd dword [eax + 8]
fst dword [esp + 0x40]
fld st(2)
fmul dword [0x6b4014]
fadd dword [eax]
fst dword [esp + 0x58]
fstp dword [esp + 0x20]
fst dword [esp + 0x7c]
fld st(2)
fmul dword [0x6b4010]
fadd dword [eax]
fstp dword [esp + 0x6c]
fld st(1)
fmul dword [0x6b1604]
fadd dword [eax + 8]
fstp dword [esp + 0xd4]
fld st(2)
fmul dword [0x6b1604]
fadd dword [eax]
fstp dword [esp + 0x64]
fld st(2)
fmul dword [0x6b400c]
fadd dword [eax]
fstp dword [esp + 0xcc]
fld st(2)
fmul dword [0x6864d4]
fadd dword [eax]
fstp dword [esp + 0xb4]
fld st(1)
fmul dword [0x68b778]
fadd dword [eax + 8]
fst dword [esp + 0x8c]
fld st(3)
fmul dword [0x6b4008]
mov ecx, dword [esp + 0x58]
mov edi, 0x6f2ffc
mov dword [esp + 0x58], ecx
mov dword [esp + 0xc], edi
fadd dword [eax]
fst dword [esp + 0x54]
fstp dword [esp + 0xbc]
mov edx, dword [esp + 0x54]
fstp dword [esp + 0xc4]
fld st(1)
fmul dword [0x6b4004]
mov dword [esp + 0x54], edx
mov edx, edi
test edx, edx
fadd dword [eax + 8]
fstp dword [esp + 0xa4]
fld st(2)
fmul dword [0x6b4000]
fadd dword [eax]
fstp dword [esp + 0x9c]
fstp dword [esp + 0x4c]
fld st(1)
fmul dword [0x6b3ffc]
fadd dword [eax]
fstp dword [esp + 0xac]
fld st(0)
fmul dword [0x6864d4]
fadd dword [eax + 8]
fstp dword [esp + 0x74]
fmul dword [0x6b3ff8]
fadd dword [eax + 8]
fstp dword [esp + 0x94]
fmul dword [0x6b4018]
fadd dword [eax]
fstp dword [esp + 0x84]
je 0x5c4860
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x10], ecx
jmp 0x5c4864
mov dword [esp + 0x10], ebx
mov esi, 0x6e5e1c
mov eax, esi
mov dword [esp + 0x14], esi
test eax, eax
je 0x5c4885
mov edi, esi
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x18], ecx
jmp 0x5c4889
mov dword [esp + 0x18], ebx
fld dword [esp + 0x3c]
lea ecx, [esp + 0xc]
fstp qword [esp + 0xdc]
fld dword [esp + 0x1c]
mov edx, dword [esp + 0xe0]
mov eax, dword [esp + 0xdc]
fstp qword [esp + 0xe4]
push ecx
push edx
mov edx, dword [esp + 0xf0]
lea ecx, [esp + 0x1c]
push eax
mov eax, dword [esp + 0xf0]
push ecx
push edx
push eax
lea ecx, [esp + 0x104]
call fcn.004c52b0
mov ecx, eax
call fcn.004c5210
mov ecx, eax
call fcn.004c52b0
mov ecx, eax
call fcn.004c5210
fld dword [esp + 0x6c]
fsub dword [esp + 0x1c]
fld dword [esp + 0x7c]
fsub dword [esp + 0x3c]
fld dword [esp + 0x64]
fsub dword [esp + 0x34]
fld dword [esp + 0xd4]
fsub dword [esp + 0x38]
mov edi, 0x6f2ff8
mov ecx, edi
mov dword [esp + 0x14], edi
test ecx, ecx
je 0x5c492c
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x18], ecx
jmp 0x5c4930
mov dword [esp + 0x18], ebx
mov edx, esi
mov dword [esp + 0xc], esi
test edx, edx
je 0x5c494c
mov edi, esi
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x10], ecx
jmp 0x5c4950
mov dword [esp + 0x10], ebx
mov eax, esi
mov dword [esp + 0xd4], esi
test eax, eax
je 0x5c4972
mov edi, esi
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0xd8], ecx
jmp 0x5c4979
mov dword [esp + 0xd8], ebx
mov ecx, esi
mov dword [esp + 0x64], esi
test ecx, ecx
je 0x5c4995
mov edi, esi
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x68], ecx
jmp 0x5c4999
mov dword [esp + 0x68], ebx
mov edx, esi
mov dword [esp + 0x7c], esi
test edx, edx
je 0x5c49b8
mov edi, esi
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x80], ecx
jmp 0x5c49bf
mov dword [esp + 0x80], ebx
mov eax, esi
mov dword [esp + 0x6c], esi
test eax, eax
je 0x5c49db
mov edi, esi
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x70], ecx
jmp 0x5c49df
mov dword [esp + 0x70], ebx
fld dword [esp + 0x38]
lea ecx, [esp + 0x14]
lea edx, [esp + 0xc]
push ecx
lea eax, [esp + 0xd8]
sub esp, 8
lea ecx, [esp + 0x70]
fstp qword [esp]
fld dword [esp + 0x40]
push edx
lea edx, [esp + 0x8c]
sub esp, 8
fstp qword [esp]
push eax
lea eax, [esp + 0x88]
fmul dword [0x6b15f8]
sub esp, 8
fadd dword [esp + 0x5c]
fstp qword [esp]
push ecx
lea ecx, [esp + 0x114]
fmul dword [0x6b15f8]
sub esp, 8
fadd dword [esp + 0x64]
fstp qword [esp]
push edx
fmul dword [0x6b15f8]
sub esp, 8
fadd dword [esp + 0x78]
fstp qword [esp]
push eax
fmul dword [0x6b15f8]
sub esp, 8
fadd dword [esp + 0x64]
fstp qword [esp]
call fcn.004c52b0
mov ecx, eax
call fcn.004c5210
mov ecx, eax
call fcn.004c52b0
mov ecx, eax
call fcn.004c5210
mov ecx, eax
call fcn.004c52b0
mov ecx, eax
call fcn.004c5210
mov ecx, eax
call fcn.004c52b0
mov ecx, eax
call fcn.004c5210
mov ecx, eax
call fcn.004c52b0
mov ecx, eax
call fcn.004c5210
mov ecx, eax
call fcn.004c52b0
mov ecx, eax
call fcn.004c5210
fld dword [esp + 0xcc]
fsub dword [esp + 0x34]
fld dword [esp + 0x5c]
fsub dword [esp + 0x38]
fld dword [esp + 0xb4]
fsub dword [esp + 0x24]
fld dword [esp + 0x44]
fsub dword [esp + 0x2c]
mov edi, 0x6f2ff8
mov ecx, edi
mov dword [esp + 0x14], edi
test ecx, ecx
je 0x5c4af8
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x18], ecx
jmp 0x5c4afc
mov dword [esp + 0x18], ebx
mov edx, esi
mov dword [esp + 0xc], esi
test edx, edx
je 0x5c4b18
mov edi, esi
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x10], ecx
jmp 0x5c4b1c
mov dword [esp + 0x10], ebx
mov eax, esi
mov dword [esp + 0x44], esi
test eax, eax
je 0x5c4b38
mov edi, esi
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x48], ecx
jmp 0x5c4b3c
mov dword [esp + 0x48], ebx
mov ecx, esi
mov dword [esp + 0xb4], esi
test ecx, ecx
je 0x5c4b5e
mov edi, esi
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0xb8], ecx
jmp 0x5c4b65
mov dword [esp + 0xb8], ebx
mov edx, esi
mov dword [esp + 0x5c], esi
test edx, edx
je 0x5c4b81
mov edi, esi
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x60], ecx
jmp 0x5c4b85
mov dword [esp + 0x60], ebx
mov eax, esi
mov dword [esp + 0xcc], esi
test eax, eax
je 0x5c4ba7
mov edi, esi
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0xd0], ecx
jmp 0x5c4bae
mov dword [esp + 0xd0], ebx
fld dword [esp + 0x2c]
lea ecx, [esp + 0x14]
lea edx, [esp + 0xc]
push ecx
lea eax, [esp + 0x48]
sub esp, 8
lea ecx, [esp + 0xc0]
fstp qword [esp]
fld dword [esp + 0x30]
push edx
lea edx, [esp + 0x6c]
sub esp, 8
fstp qword [esp]
push eax
lea eax, [esp + 0xe8]
fmul dword [0x6b15f8]
sub esp, 8
fadd dword [esp + 0x50]
fstp qword [esp]
push ecx
lea ecx, [esp + 0x114]
fmul dword [0x6b15f8]
sub esp, 8
fadd dword [esp + 0x54]
fstp qword [esp]
push edx
fmul dword [0x6b15f8]
sub esp, 8
fadd dword [esp + 0x74]
fstp qword [esp]
push eax
fmul dword [0x6b15f8]
sub esp, 8
fadd dword [esp + 0x7c]
fstp qword [esp]
call fcn.004c52b0
mov ecx, eax
call fcn.004c5210
mov ecx, eax
call fcn.004c52b0
mov ecx, eax
call fcn.004c5210
mov ecx, eax
call fcn.004c52b0
mov ecx, eax
call fcn.004c5210
mov ecx, eax
call fcn.004c52b0
mov ecx, eax
call fcn.004c5210
mov ecx, eax
call fcn.004c52b0
mov ecx, eax
call fcn.004c5210
mov ecx, eax
call fcn.004c52b0
mov ecx, eax
call fcn.004c5210
fld dword [esp + 0xbc]
fsub dword [esp + 0x24]
fld dword [esp + 0x8c]
fsub dword [esp + 0x2c]
fld dword [esp + 0x54]
fsub dword [esp + 0x30]
fld dword [esp + 0xc4]
fsub dword [esp + 0x28]
mov edi, 0x6f2ff8
mov ecx, edi
mov dword [esp + 0x14], edi
test ecx, ecx
je 0x5c4cc7
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x18], ecx
jmp 0x5c4ccb
mov dword [esp + 0x18], ebx
mov edx, esi
mov dword [esp + 0xc], esi
test edx, edx
je 0x5c4ce7
mov edi, esi
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x10], ecx
jmp 0x5c4ceb
mov dword [esp + 0x10], ebx
mov eax, esi
mov dword [esp + 0xc4], esi
test eax, eax
je 0x5c4d0d
mov edi, esi
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0xc8], ecx
jmp 0x5c4d14
mov dword [esp + 0xc8], ebx
mov ecx, esi
mov dword [esp + 0x8c], esi
test ecx, ecx
je 0x5c4d36
mov edi, esi
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x90], ecx
jmp 0x5c4d3d
mov dword [esp + 0x90], ebx
mov edx, esi
mov dword [esp + 0xbc], esi
test edx, edx
je 0x5c4d5f
mov edi, esi
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0xc0], ecx
jmp 0x5c4d66
mov dword [esp + 0xc0], ebx
mov eax, esi
mov dword [esp + 0x44], esi
test eax, eax
je 0x5c4d82
mov edi, esi
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x48], ecx
jmp 0x5c4d86
mov dword [esp + 0x48], ebx
fld dword [esp + 0x28]
lea ecx, [esp + 0x14]
lea edx, [esp + 0xc]
push ecx
lea eax, [esp + 0xc8]
sub esp, 8
lea ecx, [esp + 0x98]
fstp qword [esp]
fld dword [esp + 0x3c]
push edx
lea edx, [esp + 0xcc]
sub esp, 8
fstp qword [esp]
push eax
lea eax, [esp + 0x60]
fmul dword [0x6b15f8]
sub esp, 8
fadd dword [esp + 0x4c]
fstp qword [esp]
push ecx
lea ecx, [esp + 0x114]
fmul dword [0x6b15f8]
sub esp, 8
fadd dword [esp + 0x60]
fstp qword [esp]
push edx
fmul dword [0x6b15f8]
sub esp, 8
fadd dword [esp + 0x68]
fstp qword [esp]
push eax
fmul dword [0x6b15f8]
sub esp, 8
fadd dword [esp + 0x6c]
fstp qword [esp]
call fcn.004c52b0
mov ecx, eax
call fcn.004c5210
mov ecx, eax
call fcn.004c52b0
mov ecx, eax
call fcn.004c5210
mov ecx, eax
call fcn.004c52b0
mov ecx, eax
call fcn.004c5210
mov ecx, eax
call fcn.004c52b0
mov ecx, eax
call fcn.004c5210
mov ecx, eax
call fcn.004c52b0
mov ecx, eax
call fcn.004c5210
mov ecx, eax
call fcn.004c52b0
mov ecx, eax
call fcn.004c5210
fld dword [esp + 0x9c]
fsub dword [esp + 0x30]
fld dword [esp + 0xa4]
fsub dword [esp + 0x28]
fld dword [esp + 0xac]
fsub dword [esp + 0x20]
fld dword [esp + 0x4c]
fsub dword [esp + 0x40]
mov edi, 0x6f2ff8
mov ecx, edi
mov dword [esp + 0x14], edi
test ecx, ecx
je 0x5c4ea2
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x18], ecx
jmp 0x5c4ea6
mov dword [esp + 0x18], ebx
mov edx, esi
mov dword [esp + 0xc], esi
test edx, edx
je 0x5c4ec2
mov edi, esi
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x10], ecx
jmp 0x5c4ec6
mov dword [esp + 0x10], ebx
mov eax, esi
mov dword [esp + 0x4c], esi
test eax, eax
je 0x5c4ee2
mov edi, esi
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x50], ecx
jmp 0x5c4ee6
mov dword [esp + 0x50], ebx
mov ecx, esi
mov dword [esp + 0xac], esi
test ecx, ecx
je 0x5c4f08
mov edi, esi
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0xb0], ecx
jmp 0x5c4f0f
mov dword [esp + 0xb0], ebx
mov edx, esi
mov dword [esp + 0xa4], esi
test edx, edx
je 0x5c4f31
mov edi, esi
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0xa8], ecx
jmp 0x5c4f38
mov dword [esp + 0xa8], ebx
mov eax, esi
mov dword [esp + 0x9c], esi
test eax, eax
je 0x5c4f5a
mov edi, esi
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0xa0], ecx
jmp 0x5c4f61
mov dword [esp + 0xa0], ebx
fld dword [esp + 0x40]
lea ecx, [esp + 0x14]
lea edx, [esp + 0xc]
push ecx
lea eax, [esp + 0x50]
sub esp, 8
lea ecx, [esp + 0xb8]
fstp qword [esp]
fld dword [esp + 0x2c]
push edx
lea edx, [esp + 0xb4]
sub esp, 8
fstp qword [esp]
push eax
lea eax, [esp + 0xb8]
fmul dword [0x6b15f8]
sub esp, 8
fadd dword [esp + 0x64]
fstp qword [esp]
push ecx
lea ecx, [esp + 0x114]
fmul dword [0x6b15f8]
sub esp, 8
fadd dword [esp + 0x50]
fstp qword [esp]
push edx
fmul dword [0x6b15f8]
sub esp, 8
fadd dword [esp + 0x64]
fstp qword [esp]
push eax
fmul dword [0x6b15f8]
sub esp, 8
fadd dword [esp + 0x78]
fstp qword [esp]
call fcn.004c52b0
mov ecx, eax
call fcn.004c5210
mov ecx, eax
call fcn.004c52b0
mov ecx, eax
call fcn.004c5210
mov ecx, eax
call fcn.004c52b0
mov ecx, eax
call fcn.004c5210
mov ecx, eax
call fcn.004c52b0
mov ecx, eax
call fcn.004c5210
mov ecx, eax
call fcn.004c52b0
mov ecx, eax
call fcn.004c5210
mov ecx, eax
call fcn.004c52b0
mov ecx, eax
call fcn.004c5210
fld dword [esp + 0x58]
fsub dword [esp + 0x20]
fld dword [esp + 0x74]
fsub dword [esp + 0x40]
fld dword [esp + 0x84]
fsub dword [esp + 0x1c]
fld dword [esp + 0x94]
fsub dword [esp + 0x3c]
mov edi, 0x6f2ff8
mov ecx, edi
mov dword [esp + 0x14], edi
test ecx, ecx
je 0x5c507a
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x18], ecx
jmp 0x5c507e
mov dword [esp + 0x18], ebx
mov edx, esi
mov dword [esp + 0xc], esi
test edx, edx
je 0x5c509a
mov edi, esi
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x10], ecx
jmp 0x5c509e
mov dword [esp + 0x10], ebx
mov eax, esi
mov dword [esp + 0x94], esi
test eax, eax
je 0x5c50c0
mov edi, esi
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x98], ecx
jmp 0x5c50c7
mov dword [esp + 0x98], ebx
mov ecx, esi
mov dword [esp + 0x84], esi
test ecx, ecx
je 0x5c50e9
mov edi, esi
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x88], ecx
jmp 0x5c50f0
mov dword [esp + 0x88], ebx
mov edx, esi
mov dword [esp + 0x74], esi
test edx, edx
je 0x5c510c
mov edi, esi
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x78], ecx
jmp 0x5c5110
mov dword [esp + 0x78], ebx
mov eax, esi
mov dword [esp + 0x4c], esi
test eax, eax
je 0x5c512c
mov edi, esi
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x50], ecx
jmp 0x5c5130
mov dword [esp + 0x50], ebx
mov edx, dword [esp + 0xe0]
mov eax, dword [esp + 0xdc]
fmul dword [0x6b15f8]
lea ecx, [esp + 0x14]
push ecx
push edx
mov edx, dword [esp + 0xf0]
lea ecx, [esp + 0x14]
fadd dword [esp + 0x44]
push eax
mov eax, dword [esp + 0xf0]
push ecx
push edx
lea ecx, [esp + 0xa8]
push eax
push ecx
lea edx, [esp + 0xa0]
sub esp, 8
lea eax, [esp + 0x98]
lea ecx, [esp + 0x70]
fstp qword [esp]
push edx
fmul dword [0x6b15f8]
sub esp, 8
fadd dword [esp + 0x4c]
fstp qword [esp]
push eax
fmul dword [0x6b15f8]
sub esp, 8
fadd dword [esp + 0x7c]
fstp qword [esp]
push ecx
lea ecx, [esp + 0x12c]
fmul dword [0x6b15f8]
sub esp, 8
fadd dword [esp + 0x68]
fstp qword [esp]
call fcn.004c52b0
mov ecx, eax
call fcn.004c5210
mov ecx, eax
call fcn.004c52b0
mov ecx, eax
call fcn.004c5210
mov ecx, eax
call fcn.004c52b0
mov ecx, eax
call fcn.004c5210
mov ecx, eax
call fcn.004c52b0
mov ecx, eax
call fcn.004c5210
mov ecx, eax
call fcn.004c52b0
mov ecx, eax
call fcn.004c5210
mov ecx, eax
call fcn.004c52b0
mov ecx, eax
call fcn.004c5210
mov esi, dword [ebp + 8]
lea ecx, [esp + 0xec]
push esi
call fcn.004c51e0
mov dword [esp + 0xfc], 1
lea ecx, [esp + 0xec]
mov byte [esp + 0x108], bl
call fcn.004c50c0
mov ecx, dword [esp + 0x100]
mov eax, esi
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret