Function at 0x556c30
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xffffffc0
push 0xffffffffffffffff
push 0x65f8d9
mov eax, dword fs:[0]
push eax
sub esp, 0xa8
mov eax, dword [0x758898]
xor eax, esp
mov dword [esp + 0x70], eax
push ebx
push esi
push edi
mov eax, dword [0x758898]
xor eax, esp
push eax
lea eax, [esp + 0xb8]
mov dword fs:[0], eax
mov eax, dword [ebp + 0xc]
mov esi, dword [ebp + 8]
mov dword [esp + 0x40], eax
mov eax, dword [ebp + 0x14]
mov dword [esp + 0x4c], ecx
lea ecx, [esp + 0x3c]
mov dword [esp + 0x54], eax
mov dword [eax], 1
call fcn.00402500
xor ebx, ebx
mov dword [esp + 0xc0], ebx
push esi
lea ecx, [esp + 0x40]
push 0x678ea8
push ecx
call fcn.00402f70
mov edx, dword [esp + 0x48]
push str.selected_id
push edx
call fcn.00621810
mov esi, eax
add esp, 0x14
cmp esi, ebx
jne 0x556d1c
mov eax, dword [esp + 0x3c]
push str._26selected_id
push eax
call fcn.00621810
mov esi, eax
add esp, 8
cmp esi, ebx
je 0x556dd4
lea edi, [esi + 0xf]
push str._26selected_id
push edi
call fcn.00621810
add esp, 8
test eax, eax
je 0x556d15
push str._26selected_id
push edi
call fcn.00621810
mov esi, eax
lea edi, [esi + 0xf]
push str._26selected_id
push edi
call fcn.00621810
add esp, 0x10
test eax, eax
jne 0x556cf3
mov byte [esi], bl
add esi, 0xf
jmp 0x556d58
lea edi, [esi + 0xd]
push str.selected_id
push edi
call fcn.00621810
add esp, 8
test eax, eax
je 0x556d53
push str.selected_id
push edi
call fcn.00621810
mov esi, eax
lea edi, [esi + 0xd]
push str.selected_id
push edi
call fcn.00621810
add esp, 0x10
test eax, eax
jne 0x556d31
mov byte [esi], bl
add esi, 0xd
xor ecx, ecx
mov dword [esp + 0x74], ebx
mov dword [esp + 0x7c], ebx
mov word [esp + 0x78], cx
mov byte [esp + 0xc0], 1
mov eax, dword [0x75dc58]
cmp eax, ebx
jne 0x556d7d
mov eax, 0x75dc5c
push ebx
push eax
push str._sidmvmprs.dll
lea ecx, [esp + 0x80]
call fcn.004021b0
mov eax, dword [esp + 0x74]
cmp eax, ebx
jne 0x556d9c
lea eax, [esp + 0x78]
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov edi, eax
mov dword [esp + 0x50], edi
cmp edi, ebx
je 0x556dc4
push 0x6abf78
push edi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
cmp eax, ebx
jne 0x556def
push edi
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov byte [esp + 0xc0], bl
lea ecx, [esp + 0x74]
call fcn.00401210
mov dword [esp + 0xc0], 0xffffffff
lea ecx, [esp + 0x3c]
call fcn.00402570
xor eax, eax
jmp 0x557074
mov ecx, dword [esp + 0x40]
lea edx, [esp + 0x44]
push edx
mov edx, dword [esp + 0x40]
push 1
push esi
push ecx
push edx
mov dword [esp + 0x5c], ebx
mov dword [esp + 0x58], ebx
call eax
cmp eax, ebx
je 0x557045
mov ecx, dword [esp + 0x44]
cmp ecx, ebx
je 0x557045
mov edi, dword [ebp + 0x10]
mov eax, dword [ecx]
cmp edi, ebx
je 0x556e2d
mov edx, dword [eax + 8]
jmp 0x556e30
mov edx, dword [eax + 0xc]
call edx
mov esi, eax
cmp esi, ebx
je 0x557013
cmp edi, ebx
je 0x556e55
mov ecx, dword [esp + 0x44]
mov eax, dword [ecx]
mov edx, dword [eax + 0xc]
call edx
test eax, eax
jne 0x556e55
mov eax, dword [esp + 0x54]
mov dword [eax], ebx
push 0x58
call fcn.005f43f8
add esp, 4
mov dword [esp + 0x54], eax
mov byte [esp + 0xc0], 2
cmp eax, ebx
je 0x556e78
mov ecx, eax
call fcn.0056bd00
jmp 0x556e7a
xor eax, eax
mov byte [esp + 0xc0], 1
mov ecx, dword [esp + 0x4c]
mov dword [ecx + 0x18], eax
cmp eax, ebx
je 0x557013
mov ecx, 1
mov dword [eax + 0x54], ecx
mov edx, dword [esp + 0x3c]
push 0x5c
push edx
mov dword [esp + 0x50], ecx
call fcn.00621750
mov edi, eax
mov eax, dword [esp + 0x44]
push 0x5c
push eax
call fcn.00621750
add esp, 0x10
cmp edi, ebx
setne cl
mov byte [esp + 0x3b], cl
cmp cl, bl
je 0x556ed3
cmp eax, ebx
je 0x556ed3
cmp eax, edi
jae 0x556ed3
mov byte [esp + 0x3b], bl
cmp dword [esi], ebx
je 0x557008
cmp dword [esi + 0x1c], ebx
jg 0x556eed
jl 0x556ee7
cmp dword [esi + 0x18], ebx
jae 0x556eed
mov dword [esi + 0x18], ebx
mov dword [esi + 0x1c], ebx
lea ecx, [esp + 0x40]
call fcn.00402500
mov byte [esp + 0xc0], 3
mov ecx, dword [esi]
push ecx
lea edx, [esp + 0x44]
push 0x678ea8
push edx
call fcn.00402f70
add esp, 0xc
cmp byte [esp + 0x3b], bl
jne 0x556f53
lea esp, [esp]
mov eax, dword [esp + 0x40]
push 0x5c
push eax
call fcn.00621750
mov ecx, dword [esp + 0x48]
push 0x5c
push ecx
mov edi, eax
call fcn.00621750
add esp, 0x10
cmp edi, ebx
setne cl
cmp cl, bl
je 0x556f53
cmp eax, ebx
je 0x556f4e
cmp eax, edi
jb 0x556f53
mov byte [edi], 0x2f
jmp 0x556f20
mov edx, dword [esi + 0x14]
mov eax, dword [esi + 0x10]
mov ecx, dword [esi + 0xc]
push ebx
push ebx
push ebx
push ebx
push edx
push eax
mov eax, dword [esi + 0x1c]
push ecx
mov ecx, dword [esi + 0x18]
mov dword [esp + 0x70], ecx
mov ecx, eax
and ecx, 0x80000000
and eax, 0x7fffffff
mov dword [esp + 0x7c], ecx
mov dword [esp + 0x74], eax
fild qword [esp + 0x70]
mov dword [esp + 0x78], ebx
fild qword [esp + 0x78]
mov edx, dword [esi + 8]
mov edi, dword [esp + 0x68]
mov ecx, dword [edi + 0x18]
fchs
push edx
faddp st(1)
mov edx, dword [esp + 0x60]
push ebx
push ebx
fdiv qword [0x6abf70]
push ebx
push ebx
push ebx
sub esp, 8
fstp qword [esp]
push edx
call fcn.0056beb0
mov edx, dword [esi + 0x18]
mov ecx, dword [esi + 0x1c]
mov dword [esp + 0x6c], edx
mov edx, ecx
and ecx, 0x7fffffff
and edx, 0x80000000
mov dword [esp + 0x70], ecx
fild qword [esp + 0x6c]
mov dword [esp + 0x68], edx
mov dword [esp + 0x64], ebx
fild qword [esp + 0x64]
mov eax, dword [edi + 0x18]
fchs
faddp st(1)
fdiv qword [0x6abf70]
fadd qword [eax + 0x18]
fstp qword [eax + 0x18]
mov byte [esp + 0xc0], 1
lea ecx, [esp + 0x40]
call fcn.00402570
mov esi, dword [esi + 0x20]
cmp esi, ebx
jne 0x556ed3
mov ecx, dword [esp + 0x44]
mov eax, dword [ecx]
mov edx, dword [eax + 0x10]
call edx
cmp dword [esp + 0x48], ebx
je 0x557041
mov ecx, dword [esp + 0x4c]
mov eax, dword [ecx + 0xdc]
cmp eax, ebx
je 0x557041
mov ecx, dword [ecx + 0x18]
cmp dword [ecx + 0x10], 1
jle 0x557041
push eax
call fcn.0056bc40
mov edi, dword [esp + 0x50]
push edi
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov byte [esp + 0xc0], bl
lea ecx, [esp + 0x74]
call fcn.00401210
mov dword [esp + 0xc0], 0xffffffff
lea ecx, [esp + 0x3c]
call fcn.00402570
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0xb8]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x70]
xor ecx, esp
call fcn.0062016f
mov esp, ebp
pop ebp
ret 0x10