Function at 0x415a70
Capabilities:
Get user security identifier

Disassembly:
push ebp
mov ebp, esp
push 0xfffffffffffffffe
push 0x66d550
push 0x483770
mov eax, dword fs:[0]
push eax
sub esp, 0x74
mov eax, dword [0x678390]
xor dword [ebp - 8], eax
xor eax, ebp
mov dword [ebp - 0x1c], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0x10]
mov dword fs:[0], eax
mov eax, dword [ebp + 8]
mov dword [ebp - 0x54], eax
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x30], eax
call fcn.00453bb5
test al, al
je 0x415ac9
imul esp, dword [edx + 0x54], 0xffffffae
add cl, byte [esi + 0x67d9f8fd]
sahf
les esp, [ebp - 0x59d04ed6]
call fcn.004538be
test al, al
je 0x415af1
int1
pop ss
psadbw mm0, qword [eax]
retf
call fcn.004536db
test al, al
je 0x415b10
push ds
pushal
xlatb
invalid
mov dword [ebp - 0x58], 0
mov dword [ebp - 0x4c], 0
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x50], 0
call fcn.00453765
test al, al
je 0x415b54
popal
add ebp, dword [ebx - 0x27a011b3]
jo 0x415af1
mov cl, 0x2b
xor byte [esi], 0x39
jle 0x415b9e
sbb byte [esi - 0xa], ch
or esp, edi
adc eax, 0x70ed02e
add al, 0xc
bound esp, qword [ecx]
mov dword ss:[ebp - 0x5c], 0
mov dword [ebp - 0x5c], 0
mov dword [ebp - 0x48], 0
call fcn.00453a17
test al, al
je 0x415b82
sbb eax, dword [ecx + 0x455c6884]
pop edx
or ebx, dword [edi]
cmp eax, 0xc40c6e85
invalid
call fcn.004537aa
test al, al
je 0x415ba3
adc al, 0x72
daa
pop ecx
dec ebp
shl dword [edx], 1
adc al, 0x9c
loope 0x415b99
mov ax, word [0xf8e2bd63]
in eax, dx
arpl word [ebp + 0xaedf8e2], di
sbb edi, dword [edx + 0x72]
or bl, byte [ebx]
jp 0x415c14
sub al, 0xe8
mov esp, ds
add eax, dword [eax]
call fcn.00453834
test al, al
je 0x415bc4
sub al, 0xb6
mov eax, 0x9a803bab
cdq
sub dword [edx + ebx*4 - 0x58], ecx
pushal
shl ah, 0x46
mov ebx, ebx
fild qword [ebx - 0x17b70a3e]
or esi, ebx
add eax, dword [eax]
call fcn.004539d2
test al, al
je 0x415bdf
mov bh, 0x4a
bound edi, qword [ebx - 0x1f0db4fa]
scasd eax, dword es:[edi]
int1
add al, 0xb7
xchg ecx, eax
mov esi, 0xc744f0b6
inc ebp
les eax, [eax]
add byte [eax], al
add bh, al
inc ebp
int3
mov dh, 0xf0
inc esp
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x34], 0
call fcn.00453c3f
test al, al
je 0x415c06
cwde
jnp 0x415bdc
rcr dword [0x2b677f6f], 0x87
inc eax
sub cl, bl
inc ebp
adc eax, 0xc045c70f
add byte [eax], al
mov dword [ebp - 0x40], 0
inc ebp
rol byte [eax], 0
add byte [eax], al
mov dword [ebp - 0x44], 0
call fcn.00453b70
test al, al
je 0x415c2f
ja 0x415baa
cmp esi, dword [edx + 0x23550c03]
sbb al, 0x52
sub bl, ah
add edx, dword [eax - 0x15]
mov ebp, dword ss:[ecx]
mov dword [ebp - 0x60], 0
call fcn.00453aa1
test al, al
je 0x415c5a
mov ch, 0xdf
sahf
ret 0xf37b
call fcn.00453903
test al, al
je 0x415c78
dec esi
cld
ja 0x415c3d
das
outsd dx, dword [si]
mov ebx, 0x42dbdb8a
or byte [edx - 0x340a010a], 0x53
jbe 0x415c07
call fcn.00453a5c
test al, al
je 0x415c93
cmp cl, bl
in al, 0xab
cmp dl, byte [0x26119ec4]
add dword [0x839ea283], 0x45c760b2
cld
add byte [eax], al
add byte [eax], al
mov dword [ebp - 4], 0
call fcn.0045398d
test al, al
je 0x415cb7
xchg edx, eax
mov eax, dword [ecx + ecx - 0x71]
sbb eax, 0xfe0a8104
or al, bh
push esp
cmpsb byte cs:[esi], byte es:[edi]
mov ah, 0x31
sar byte [ebx], cl
out dx, eax
call fcn.004537aa
test al, al
je 0x415cde
pop es
sbb al, 0xfb
sub eax, dword [ecx]
inc ebp
xor esp, dword [ecx + ecx*8 + 0x7e42619e]
invalid
call fcn.00453879
test al, al
je 0x415d06
out dx, al
xor dword [ebx], ebp
push ebx
mov esp, esi
adc al, 0x72
xchg esi, eax
cmp al, 0x93
invalid
lea eax, [ebp - 0x68]
push eax
lea eax, [ebp - 0x4c]
push eax
push 0
lea eax, [ebp - 0x50]
push eax
push 0
push dword [ebp - 0x30]
push 0
call dword [sym.imp.ADVAPI32.dll_LookupAccountNameW]
test eax, eax
jne 0x4164be
mov ebx, dword [sym.imp.KERNEL32.dll_GetLastError]
call ebx
cmp eax, 0x7a
je 0x415d4b
call ebx
push eax
push str.LookupAccountName___failed._Error__d_n
call fcn.004165c0
add esp, 8
jmp 0x4164be
call fcn.0045360c
test al, al
je 0x415d64
mov ah, 0x17
pushfd
test eax, 0xc7cf9730
xchg byte [edx - 0x76327d5], ch
adc eax, 0xb075ff12
push dword [ebp - 0x50]
push 8
call dword [sym.imp.KERNEL32.dll_GetProcessHeap]
push eax
call dword [sym.imp.KERNEL32.dll_HeapAlloc]
mov word [edx - 0xafffa2], ss
adc eax, sym.imp.KERNEL32.dll_HeapAlloc
mov dword [ebp - 0x2c], eax
test eax, eax
jne 0x415d92
call ebx
push eax
push str.HeapAlloc___failed._Error__d_n
call fcn.004165c0
add esp, 8
jmp 0x4164be
call fcn.00453aa1
test al, al
je 0x415db8
mov dl, 0xd5
insb byte es:[edi], dx
and edx, esp
into
or edx, ebp
fstp dword [ecx]
xor dword [edx + 0xc714ea6], ebp
dec eax
inc ebp
jne 0x415dee
test dword [edx + 0x35], esi
mov bh, 0x44
or byte [edx], cl
stosb byte es:[edi], al
call fcn.00453bb5
test al, al
je 0x415ddf
and dword [ebp - 0x4c], esi
pop eax
cdq
add ebp, dword [eax - 0xb788d62]
fbstp tbyte [eax - 0x5d]
sti
sub dword cs:[esi - 0x7c], 0xe07c3743
mov ecx, 0x522e4f6d
sti
jbe 0x415d6b
mov eax, dword [ebp - 0x4c]
add eax, eax
push eax
push 8
inc ebp
mov ah, 3
rcl byte [eax + 0x6a], 8
call dword [sym.imp.KERNEL32.dll_GetProcessHeap]
push eax
call dword [sym.imp.KERNEL32.dll_HeapAlloc]
mov dword [ebp - 0x58], eax
test eax, eax
jne 0x415e16
mov ecx, dword [sym.imp.KERNEL32.dll_GetLastError]
call ecx
push eax
push str.HeapAlloc___failed._Error__d_n
call fcn.004165c0
add esp, 8
jmp 0x4164be
call fcn.004538be
test al, al
je 0x415e3a
sal byte [ebx + ebx + 0x53], 0xe3
cli
push ebx
jecxz 0x415e1c
pop eax
in eax, dx
imul edi, dword [edx + 0x7d5b41a], 0xffffff95
xchg ebx, eax
int 0xc
mov eax, dword [0x67bf2319]
aam 0xc6
xchg ecx, ebp
pop es
sub al, 0xe6
call fcn.00453765
test al, al
je 0x415e61
invalid
lea eax, [ebp - 0x68]
push eax
lea eax, [ebp - 0x4c]
push eax
push dword [ebp - 0x58]
lea eax, [ebp - 0x50]
push eax
push dword [ebp - 0x2c]
push dword [ebp - 0x30]
push 0
call dword [sym.imp.ADVAPI32.dll_LookupAccountNameW]
test eax, eax
jne 0x415e9d
mov ecx, dword [sym.imp.KERNEL32.dll_GetLastError]
call ecx
push eax
push str.LookupAccountName___failed._Error__d_n
call fcn.004165c0
add esp, 8
jmp 0x4164be
call fcn.00453765
test al, al
je 0x415ec5
jno 0x415ee5
mov edi, 0x9d14aa70
popfd
lock sub byte [edx - 0x32], 0xc7
jg 0x415ead
invalid
lea eax, [ebp - 0x48]
push eax
push 0
push 0
push 4
push dword [ebp - 0x54]
mov esi, dword [sym.imp.ADVAPI32.dll_GetFileSecurityW]
call esi
test eax, eax
jne 0x4164be
mov ebx, dword [sym.imp.KERNEL32.dll_GetLastError]
call ebx
cmp eax, 0x7a
je 0x415f04
xchg ecx, eax
pop esi
add bh, bh
rol dword [ebx + 0x15747af8], cl
call ebx
push eax
push str.GetFileSecurity___failed._Error__d_n
call fcn.004165c0
add esp, 8
jmp 0x4164be
call fcn.004539d2
test al, al
je 0x415f25
sbb bl, ch
dec ecx
jge 0x415f54
jmp 0x415f58
jl 0x415eac
or eax, 0x36ab674d
xchg bx, ax
invalid
push dword [ebp - 0x48]
push 8
call dword [sym.imp.KERNEL32.dll_GetProcessHeap]
push eax
call dword [sym.imp.KERNEL32.dll_HeapAlloc]
mov edi, eax
mov dword [ebp - 0x5c], edi
test edi, edi
je 0x415d7d
lea eax, [ebp - 0x48]
push eax
push dword [ebp - 0x48]
push edi
push 4
push dword [ebp - 0x54]
call esi
test eax, eax
jne 0x415f64
sal byte [ebp + 0xd], 0xff
call ebx
push eax
push str.GetFileSecurity___failed._Error__d_n
jmp 0x415d85
rcl dword [eax + 0x68], cl
js 0x415f0c
pop esi
add cl, ch
and esi, edi
invalid
call fcn.00453c3f
test al, al
je 0x415f83
sub bl, byte [edx - 0x3b]
ret
push 1
lea eax, [ebp - 0x84]
push eax
call dword [sym.imp.ADVAPI32.dll_InitializeSecurityDescriptor]
test eax, eax
jne 0x415fa3
call ebx
push eax
push str.InitializeSecurityDescriptor___failed.Error__d_n
jmp 0x415d85
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x3c]
push eax
lea eax, [ebp - 0x38]
push eax
push edi
call dword [sym.imp.ADVAPI32.dll_GetSecurityDescriptorDacl]
test eax, eax
jne 0x415fc7
call ebx
push eax
push str.GetSecurityDescriptorDacl___failed._Error__d_n
jmp 0x415d85
mov dword [ebp - 0x28], 0
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x24], 8
mov eax, dword [ebp - 0x38]
xor ecx, ecx
cmp dword [ebp - 0x3c], ecx
cmove eax, ecx
mov dword [ebp - 0x38], eax
call fcn.00453aa1
test al, al
je 0x41600e
lodsd eax, dword [esi]
mov dl, 0xd5
jmp 0x21166f7d
call fcn.00453903
test al, al
je 0x41602c
add byte [eax + eax*8 + 0x7f311574], al
adc eax, ebx
push ebx
salc
xor dword [edi + 0x11], edi
fcom dword [ebx - 0x2a]
imul eax, esp, 0x7ebb30c3
cmpsd dword [esi], dword es:[edi]
mov ecx, 0x277e1ab2
invalid
call fcn.00453a5c
test al, al
je 0x416047
mov edx, 0x92996973
mov eax, dword [0x70b1aa1f]
add dword [ebp - 0x3f], eax
or byte [edi - 0x7c4dfb38], al
jge 0x416012
cmp dword [ebp - 0x38], 0
je 0x41606f
add byte [edx + 0x6a], dh
add ch, byte [edx + 0xc]
push 2
push 0xc
lea eax, [ebp - 0x28]
push eax
push dword [ebp - 0x3c]
call dword [sym.imp.ADVAPI32.dll_GetAclInformation]
test eax, eax
jne 0x41606f
call ebx
push eax
push str.GetAclInformation___failed._Error__d_n
jmp 0x415d85
push dword [ebp - 0x2c]
call dword [sym.imp.ADVAPI32.dll_GetLengthSid]
mov ecx, dword [ebp - 0x24]
add ecx, 8
add eax, ecx
mov dword [ebp - 0x30], eax
call fcn.0045398d
or byte [ebx], al
ror dword [ecx + 0x5e8d045], 0xd9
add eax, dword [eax]
test al, al
je 0x4160a0
push esi
stc
mov ch, 4
pop edi
dec esi
and al, 0x4c
cld
adc ebp, dword [edx + eax*4 + 0x28]
pop eax
sub al, 0x63
jne 0x4160da
salc
retf 0x5e8
call fcn.004537aa
test al, al
je 0x4160c7
sti
mov dword [ecx + 0x70], edi
invalid
call fcn.00453879
test al, al
je 0x4160ef
push cs
or edi, ecx
inc edx
retf
push 0x82731aa8
int1
cmp al, 0x7d
rcr byte [ebp - 0x68], 1
loopne 0x41607d
dec ebx
outsb dx, byte [esi]
sub dword [ecx], esi
sar dword [ecx + 0x758be97e], 1
rcl byte [esi + 0x6a]
or bh, bh
adc eax, sym.imp.KERNEL32.dll_GetProcessHeap
mov esi, dword [ebp - 0x30]
push esi
push 8
call dword [sym.imp.KERNEL32.dll_GetProcessHeap]
push eax
call dword [sym.imp.KERNEL32.dll_HeapAlloc]
mov edi, eax
mov dword [ebp - 0x34], edi
test edi, edi
jne 0x416118
mov ecx, dword [sym.imp.KERNEL32.dll_GetLastError]
call ecx
jmp 0x415d7f
push 2
push esi
push edi
call dword [sym.imp.ADVAPI32.dll_InitializeAcl]
test eax, eax
jne 0x416139
mov ecx, dword [sym.imp.KERNEL32.dll_GetLastError]
call ecx
push eax
push str.InitializeAcl___failed._Error__d_n
jmp 0x415d85
call fcn.0045360c
test al, al
je 0x416152
xor ecx, dword [ebp + 0x4a]
xchg ebx, eax
out dx, al
push cs
pushfd
jle 0x41619b
and dword [esi], ecx
outsb dx, byte [esi]
push edi
xlatb
in al, 0x85
xor esi, esi
mov dword [ebp - 0x6c], esi
cmp dword [ebp - 0x38], esi
je 0x4161f2
mov eax, dword [ebp - 0x28]
test eax, eax
je 0x4161f2
xor ebx, ebx
mov dword [ebp - 0x64], ebx
mov edi, dword [sym.imp.ADVAPI32.dll_EqualSid]
mov dword [ebp - 0x44], ebx
cmp ebx, eax
jae 0x4161f2
lea eax, [ebp - 0x40]
push eax
push ebx
push dword [ebp - 0x3c]
call dword [sym.imp.ADVAPI32.dll_GetAce]
test eax, eax
jne 0x4161a2
mov ecx, dword [sym.imp.KERNEL32.dll_GetLastError]
call ecx
push eax
push str.GetAce___failed._Error__d_n
jmp 0x415d85
pop esi
add cl, ch
jecxz 0x41619b
invalid
mov eax, dword [ebp - 0x40]
test byte [eax + 1], 0x10
jne 0x4161f2
add eax, 8
push eax
push dword [ebp - 0x2c]
call edi
test eax, eax
jne 0x4161e9
mov ecx, dword [ebp - 0x40]
movzx eax, word [ecx + 2]
push eax
push ecx
push 0xffffffffffffffff
push 2
push dword [ebp - 0x34]
call dword [sym.imp.ADVAPI32.dll_AddAce]
test eax, eax
jne 0x4161e5
mov ecx, dword [sym.imp.KERNEL32.dll_GetLastError]
call ecx
push eax
push str.AddAce___failed._Error__d_n
jmp 0x415d85
inc esi
mov dword [ebp - 0x6c], esi
inc ebx
mov dword [ebp - 0x64], ebx
mov eax, dword [ebp - 0x28]
jmp 0x416176
call fcn.00453aa1
test al, al
je 0x416218
ja 0x416273
push ds
aas
and bh, byte [ebx]
mov cl, 0xc6
add byte [ebx + 0x6a835cfc], ah
mov bh, 0x1e
adc al, 0x66
popfd
mov ecx, 0x500b2489
pop ebp
mov al, 2
mov ch, 0x3c
call fcn.00453bb5
test al, al
je 0x41623f
jp 0x416236
shr dword [eax], cl
daa
aam 0x21
cmp byte [edi], al
leave
retf 0x9cf1
fild qword [edi - 0x53]
cdq
cmp dword [ebx - 0x5c], esp
in eax, 0x44
push str.AddAccessAllowedAceEx
push str.advapi32.dll
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
push dword [ebp - 0x2c]
mov edi, dword [ebp - 0x34]
push dword [ebp + 0x10]
test eax, eax
je 0x416281
push 3
push 2
push edi
call eax
test eax, eax
jne 0x4162a1
mov ecx, dword [sym.imp.KERNEL32.dll_GetLastError]
call ecx
push eax
push str.AddAccessAllowedAceEx___failed._Error__d_n
jmp 0x415d85
add bh, bh
rcl dword [eax + 0x68]
mov eax, 0xe9005eb1
add al, 0xfb
invalid
push 2
push edi
call dword [sym.imp.ADVAPI32.dll_AddAccessAllowedAce]
test eax, eax
jne 0x4162a1
mov ecx, dword [sym.imp.KERNEL32.dll_GetLastError]
call ecx
push eax
push str.AddAccessAllowedAce___failed._Error__d_n
jmp 0x415d85
cmp dword [ebp - 0x38], 0
je 0x41630e
mov eax, dword [ebp - 0x28]
test eax, eax
je 0x41630e
mov ebx, dword [ebp - 0x44]
cmp ebx, eax
jae 0x41630e
lea eax, [ebp - 0x40]
push eax
push ebx
push dword [ebp - 0x3c]
call dword [sym.imp.ADVAPI32.dll_GetAce]
test eax, eax
jne 0x4162da
mov ecx, dword [sym.imp.KERNEL32.dll_GetLastError]
call ecx
push eax
push str.GetAce___failed._Error__d_n
jmp 0x415d85
mov ecx, dword [ebp - 0x40]
movzx eax, word [ecx + 2]
push eax
push ecx
push 0xffffffffffffffff
push 2
push edi
call dword [sym.imp.ADVAPI32.dll_AddAce]
test eax, eax
jne 0x416305
mov ecx, dword [sym.imp.KERNEL32.dll_GetLastError]
call ecx
push eax
push str.AddAce___failed._Error__d_n
jmp 0x415d85
inc ebx
mov dword [ebp - 0x64], ebx
mov eax, dword [ebp - 0x28]
jmp 0x4162b1
call fcn.00453a17
test al, al
je 0x41632e
xor al, 0xe9
mov esi, 0xccb2595c
pop edx
inc ebp
and eax, 0xef101e0a
stosd dword es:[edi], eax
test dword [ecx + 0x42], 0x1ab74dc1
mov byte [0x3d477e8], al
add byte [eax + eax*8 + 0x575b1874], al
call fcn.004537aa
test al, al
je 0x41634f
pop ebx
push edi
loopne 0x4162e7
mov al, 0x84
jno 0x416390
insd dword es:[edi], dx
sbb al, 0x3e
pop edi
pop esp
push ecx
pop ebp
cwde
xor eax, 0x5669d20a
lahf
les ecx, [esi]
call fcn.00453834
test al, al
je 0x416370
pop ss
lcall 0xc86c, 0xe231056b
pop edi
scasb al, byte es:[edi]
daa
xchg edi, eax
mov eax, dword [0x4a031436]
iretd
push 0
push dword [ebp - 0x34]
push 1
lea eax, [ebp - 0x84]
push eax
call dword [sym.imp.ADVAPI32.dll_SetSecurityDescriptorDacl]
test eax, eax
jne 0x41639b
mov ecx, dword [sym.imp.KERNEL32.dll_GetLastError]
call ecx
push eax
push str.SetSecurityDescriptorDacl___failed._Error__d_n
jmp 0x415d85
push str.SetSecurityDescriptorControl
push str.advapi32.dll
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov esi, eax
test esi, esi
je 0x41642d
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x44], 0
inc ebp
rol byte [eax], 1
add byte [eax], al
add bh, al
inc ebp
mov esp, 0
lea eax, [ebp - 0x44]
push eax
lea eax, [ebp - 0x30]
push eax
push dword [ebp - 0x5c]
call dword [sym.imp.ADVAPI32.dll_GetSecurityDescriptorControl]
test eax, eax
jne 0x4163ee
mov ecx, dword [sym.imp.KERNEL32.dll_GetLastError]
call ecx
push eax
push str.GetSecurityDescriptorControl___failed.Error__d_n
jmp 0x415d85
mov eax, dword [ebp - 0x30]
test eax, 0x400
je 0x4163ff
mov eax, 0x500
jmp 0x41640b
test eax, 0x1000
je 0x41642d
mov eax, 0x1000
push eax
push eax
lea eax, [ebp - 0x84]
push eax
call esi
test eax, eax
jne 0x41642d
mov ecx, dword [sym.imp.KERNEL32.dll_GetLastError]
call ecx
push eax
push str.SetSecurityDescriptorControl___failed.Error__d_n
jmp 0x415d85
call fcn.00453bb5
test al, al
je 0x416447
jns 0x4163b9
xchg ebp, eax
mov ecx, 0x6ce89df6
add ebp, eax
sar dword [eax + 0x49], 1
fld qword [ebp + 0x72e817ce]
aam 3
add byte [eax + eax*8 + 0x5ea61f74], al
call fcn.004538be
test al, al
je 0x41646f
cmpsb byte [esi], byte es:[edi]
pop esi
salc
xchg byte [edx + esi], cl
imul ebx, dword [esi + ecx*2 - 0x7f], 0xffffffd8
push esp
arpl bx, bp
xor al, 0x23
or al, 0xfc
mov word [esi], ds
mov dword [0x96beb3f6], eax
push esp
sbb ecx, dword [edi + esi*2]
and esp, 0xffffffe8
rol byte [bp + di], cl
add byte [eax + eax*8 + 0x248e1674], al
adc al, 0xc
inc ebp
call fcn.004536db
test al, al
je 0x41648e
mov fs, word [esp + edx]
or al, 0x45
push ebx
in al, dx
invalid
lea eax, [ebp - 0x84]
push eax
push 4
push dword [ebp - 0x54]
call dword [sym.imp.ADVAPI32.dll_SetFileSecurityW]
test eax, eax
jne 0x4164b7
mov ecx, dword [sym.imp.KERNEL32.dll_GetLastError]
call ecx
push eax
push str.SetFileSecurity___failed._Error__d_n
jmp 0x415d85
mov dword [ebp - 0x60], 1
mov dword [ebp - 4], 0xfffffffe
call fcn.00416538
call fcn.00453aa1
test al, al
je 0x4164f0
sbb esp, dword [ecx]
jo 0x4164f3
or al, byte [esi - 0x79]
bound edi, qword [ebp - 0x659fff0b]
dec edx
shl dword [edx], cl
test dword [edi], ecx
enter 0xfffffffffffff0b1, 0xffffffffffffff88
mov ch, ch
push ebp
push ebx
fcmovnbe st(0), st(4)
adc al, ch
rcl dh, 3
add byte [eax + eax*8 + 0x3531e74], al
invalid
call fcn.00453bb5
add eax, dword [eax]
test al, al
je 0x416517
push ebx
add eax, edi
xlatb
popal
xchg ebp, eax
push edi
stosd dword es:[edi], eax
xchg ebx, eax
clc
out dx, eax
cmp byte [0x18b2448e], ch
cmp eax, 0x6915eb38
sar byte [0x88968e42], 1
sub edx, eax
mov eax, dword [ebp - 0x60]
mov ecx, dword [ebp - 0x10]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x1c]
xor ecx, ebp
call fcn.0047070c
mov esp, ebp
pop ebp
ret 0xc