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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x108
mov ebx, dword [ebp + 8]
mov dword [esp + 0x100], 0
mov dword [esp + 0x74], 0
mov dword [esp + 0x70], 0
mov dword [esp + 0x6c], 0
mov eax, dword [ebx]
cmp dword [ebx + 8], 1
jne 0x469ff6
mov ecx, 0xffffffff
jmp 0x469fef
movzx edx, byte [eax + 0x10]
shl edx, 0x18
movzx esi, byte [eax + 0x11]
shl esi, 0x10
or esi, edx
movzx edx, byte [eax + 0x12]
shl edx, 8
or edx, esi
movzx esi, byte [eax + 0x13]
or esi, edx
add ecx, 1
jb 0x469fd0
jmp 0x469ff9
mov esi, dword [eax + 0x10]
lea eax, [esp + 0xb0]
mov dword [esp], eax
mov dword [esp + 8], 0x50
mov dword [esp + 4], 0
call fcn.007c51a0
lea eax, [esp + 0x100]
mov dword [esp + 8], eax
mov dword [esp], ebx
mov dword [esp + 4], 2
call fcn.004585b0
test eax, eax
je 0x46a699
mov dword [esp + 0x30], esi
mov eax, dword [esp + 0x100]
lea ecx, [eax + 0x28]
lea edx, [eax + 0x34]
lea esi, [eax + 0x20]
lea edi, [eax + 0x2c]
lea eax, [eax + 0x10]
mov dword [esp + 0x10], ecx
mov dword [esp + 0xc], edx
mov dword [esp + 8], esi
mov dword [esp + 4], edi
mov dword [esp], eax
call fcn.00414a40
call fcn.00455fb0
test eax, eax
je 0x46a0d8
mov esi, 0xffffffff
jmp 0x46a0d3
mov eax, dword [esp + 0x100]
mov ecx, dword [eax + 0x30]
mov edx, dword [eax + 0x2c]
mov edi, dword [eax + 0x18]
mov eax, dword [eax + 0x1c]
mov dword [esp + 0x24], ecx
mov dword [esp + 0x20], edx
mov dword [esp + 0x18], eax
mov dword [esp + 0xc], edi
mov dword [esp], ebx
mov dword [esp + 0x1c], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 8], 0
mov dword [esp + 4], str.login
call fcn.004582d0
add esi, 1
jb 0x46a080
mov eax, dword [esp + 0x100]
mov eax, dword [eax + 0x18]
mov dword [esp], eax
mov dword [esp + 4], 0
call fcn.00459aa0
lea eax, [esp + 0x50]
mov dword [esp], eax
call fcn.005ac390
lea eax, [ebx + 0x42]
mov dword [esp + 0x28], eax
xor edi, edi
mov dword [esp + 0x44], 0
mov dword [esp + 0x38], 0
mov dword [esp + 0x3c], 0
nop
mov dword [esp], edi
call fcn.00434c70
mov eax, dword [esp + 0x44]
mov dword [esp], eax
call fcn.004235e0
mov ecx, ebx
call fcn.0046abe0
mov esi, eax
test esi, esi
jne 0x46a6a6
mov eax, dword [esp + 0x30]
cmp eax, 0x277f
jne 0x46a180
mov ecx, dword [esp + 0x100]
mov eax, 0xffffffff
cmp dword [ecx + 0x48], 0x18
ja 0x46a2eb
jne 0x46a180
cmp dword [ecx + 0x4c], 0
jne 0x46a2eb
nop word cs:[eax + eax]
cmp dword [ebx + 0x110], 1
jne 0x46a1b0
call fcn.00449410
mov ecx, dword [esp + 0x100]
mov dword [ecx + 0x60], eax
cmp dword [ebx + 0x110], 1
jne 0x46a1b0
call fcn.00444dc0
mov ecx, dword [esp + 0x100]
mov dword [ecx + 0x68], eax
mov eax, dword [esp + 0x100]
mov eax, dword [eax + 0x18]
mov dword [esp], eax
call fcn.004351b0
mov edi, eax
test edi, edi
je 0x46a340
mov eax, dword [ebx + 0x110]
cmp eax, 3
sete cl
cmp eax, 1
setne al
movzx eax, al
mov dword [esp + 0x78], eax
movzx eax, cl
mov dword [esp + 0x7c], eax
sete al
movzx eax, al
mov dword [esp + 0x80], eax
mov eax, dword [esp + 0x100]
movsd xmm0, qword [eax]
movsd qword [esp + 0x88], xmm0
mov ecx, dword [eax + 0x30]
mov dword [esp + 0x90], ecx
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x94], ecx
mov ecx, dword [eax + 0x34]
mov dword [esp + 0x98], ecx
mov ecx, dword [eax + 0x38]
mov dword [esp + 0x9c], ecx
mov ecx, dword [eax + 0x3c]
mov dword [esp + 0xa0], ecx
mov dword [esp + 0xa4], 0
mov eax, dword [eax + 0x68]
mov dword [esp + 0xa8], eax
mov dword [esp + 0xac], 0
call fcn.004574f0
cmp eax, 1
mov ecx, 0x4777e0
mov edx, 0x477830
cmove ecx, edx
cmp eax, 2
mov eax, 0x477910
cmove ecx, eax
mov eax, dword [esp + 0x100]
mov edx, dword [eax + 0x18]
mov eax, dword [eax + 0x1c]
mov dword [esp + 0x10], ecx
lea ecx, [esp + 0x78]
mov dword [esp + 0xc], ecx
mov dword [esp + 4], eax
mov dword [esp], edx
mov dword [esp + 8], 0x469030
call fcn.004261a0
mov dword [esp + 0x44], eax
mov dword [esp], eax
call fcn.007ca940
mov dword [esp + 0x4c], 0
mov ecx, 0x70000007
mov esi, 0xffffffff
test eax, eax
je 0x46a328
mov dword [esp + 0x2c], edi
jmp 0x46a3c0
mov dword [esp + 0xb0], 0x7000002a
add eax, 1
jb 0x46a2e0
mov dword [esp + 0x44], 0
xor edi, edi
jmp 0x46a643
mov eax, dword [esp + 0x100]
mov eax, dword [eax + 0x18]
mov dword [esp], eax
call fcn.004204d0
test eax, eax
mov eax, 0x7000001f
mov ecx, 0x70000007
cmove eax, ecx
mov dword [esp + 0xb0], eax
add esi, 1
jb 0x46a300
jmp 0x46a643
mov esi, 0xffffffff
call fcn.004b0080
cmp eax, 3
je 0x46a37b
cmp eax, 2
je 0x46a3a5
cmp eax, 1
je 0x46a39b
mov dword [esp + 0xb0], 0x70000007
jmp 0x46a2f0
mov dword [esp + 0xb0], 0x700002bb
add esi, 1
jb 0x46a370
jmp 0x46a2f0
mov dword [esp + 0xb0], 0x7000000b
add esi, 1
jb 0x46a390
jmp 0x46a2f0
mov dword [esp + 0xb0], 0x7000000e
jmp 0x46a2f0
mov ecx, edx
nop word [eax + eax]
mov dword [esp + 0xb0], ecx
mov esi, dword [esp + 0x44]
mov ebx, dword [esp + 0x4c]
nop
mov dword [esp], esi
call fcn.00423550
test eax, eax
jne 0x46a630
mov dword [esp], esi
call fcn.00430370
mov esi, eax
mov eax, dword [esi + 0x128]
mov dword [esp + 0x40], eax
mov eax, dword [eax + 0x228]
mov dword [esp + 0x48], eax
mov eax, 0xffffffff
mov edx, dword [esp + 0x38]
mov ecx, edx
mov edi, dword [esp + 0x3c]
or ecx, edi
jne 0x46a42b
jmp 0x46a426
mov edx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
add eax, 1
jb 0x46a420
mov dword [esp + 0x3c], edi
mov dword [esp + 0x38], edx
mov dword [esp], ebx
call fcn.00435360
call fcn.004352d0
mov dword [esp + 0x4c], eax
mov edi, dword [esp + 0x40]
mov dword [esp], edi
call fcn.0040b670
mov ebx, 0xffffffff
test eax, eax
je 0x46a555
mov eax, dword [esp + 0x100]
mov ecx, dword [eax + 0x54]
mov edx, dword [eax + 0x48]
mov eax, dword [eax + 0x4c]
lea esi, [esp + 0x6c]
mov dword [esp + 0x10], esi
mov esi, dword [esp + 0x44]
mov dword [esp + 0xc], esi
mov dword [esp + 8], ecx
mov dword [esp + 4], eax
mov dword [esp], 0x16
mov ecx, dword [esp + 0x48]
call fcn.00477e50
mov edi, eax
test edi, edi
mov ebx, dword [esp + 0x4c]
je 0x46a3d0
mov eax, dword [esp + 0x100]
mov dword [esp + 0x1c], ebx
lea ecx, [esp + 0x74]
mov dword [esp + 0x18], ecx
lea ecx, [esp + 0x70]
mov dword [esp + 0x14], ecx
mov dword [esp + 0x10], edi
lea ecx, [esp + 0xb0]
mov dword [esp + 0xc], ecx
mov dword [esp + 8], eax
mov eax, dword [ebp + 8]
mov dword [esp], eax
mov dword [esp + 4], 0
call fcn.004a9c70
mov ebx, eax
mov eax, dword [esp + 0x70]
mov dword [esp + 0x40], eax
mov esi, dword [esp + 0x74]
mov dword [esp], edi
call fcn.004235e0
mov edx, ebx
jmp 0x46a55a
mov eax, dword [esp + 0x100]
mov ecx, dword [esp + 0x4c]
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], esi
mov dword [esp + 0x14], edi
mov ecx, dword [esp + 0x48]
mov dword [esp + 0x10], ecx
lea ecx, [esp + 0xb0]
mov dword [esp + 0xc], ecx
mov dword [esp + 8], eax
mov eax, dword [ebp + 8]
mov dword [esp], eax
mov dword [esp + 4], 0
call fcn.004a7f70
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x44]
mov dword [esp], eax
call fcn.00423570
mov edx, dword [esp + 0x34]
add ebx, 1
jb 0x46a500
test edx, edx
je 0x46a74a
cmp edx, 0xf7ffffff
mov ecx, edx
ja 0x46a3c0
mov eax, edx
and eax, 0xf0000000
cmp eax, 0x70000000
mov ecx, edx
je 0x46a3c0
mov ecx, 0x7000002b
mov eax, 0xffffffff
cmp edx, 0x20000046
jg 0x46a5b4
cmp edx, 0xe000000a
je 0x46a3c0
cmp edx, 0xe0000001
jne 0x46a5f0
mov ecx, 0x70000007
jmp 0x46a3c0
cmp edx, 0x20000047
je 0x46a5d0
cmp edx, 0x2000004a
je 0x46a603
cmp edx, 0x2000004b
jne 0x46a5f0
nop dword [eax]
mov edx, ecx
add eax, 1
mov ecx, 0x70000019
jb 0x46a5d0
jmp 0x46a3b5
mov edx, ecx
add eax, 1
mov ecx, 0x70000005
jb 0x46a5f0
mov ecx, edx
jmp 0x46a3c0
test esi, esi
je 0x46a619
mov eax, dword [esi + 0x48]
dec eax
mov ecx, 0x70000029
cmp eax, 3
jb 0x46a3c0
mov ecx, 0x70000005
jmp 0x46a3c0
mov dword [esp + 0x44], esi
mov dword [esp], ebx
call fcn.00435360
mov ebx, dword [ebp + 8]
mov edi, dword [esp + 0x2c]
lea eax, [esp + 0x50]
mov dword [esp], eax
call fcn.005ac460
xor esi, esi
test eax, eax
mov eax, 0
jne 0x46a120
mov dword [esp + 0x4c], eax
call fcn.00447d70
test eax, eax
je 0x46a673
mov dword [esp + 0x6c], 1
mov eax, dword [esp + 0xb0]
cmp eax, 0x70000007
jne 0x46a70d
mov ecx, 0xffffffff
mov eax, 0x70000007
cmp dword [esp + 0x6c], 0
jmp 0x46a723
mov dword [esp], ebx
call fcn.0040a2e0
jmp 0x46abb4
mov eax, dword [esi + 0x374]
mov ecx, esi
add ecx, 0x2f4
mov dword [esp + 8], eax
mov dword [esp + 4], ecx
mov dword [esp], ebx
call fcn.00459310
mov edi, dword [esp + 0x100]
test edi, edi
je 0x46a6f5
mov ebx, 0xffffffff
jmp 0x46a6f0
mov dword [esp], edi
mov dword [esp + 4], 2
call fcn.0064bf00
add ebx, 1
jb 0x46a6e0
mov dword [esp + 0x100], 0
mov dword [esp], esi
call fcn.00435360
jmp 0x46abb4
cmp eax, 0x7000001f
jne 0x46a845
mov edx, dword [esp + 0x6c]
mov ecx, 0xffffffff
test edx, edx
mov edx, dword [esp + 0x38]
jne 0x46a740
jmp 0x46a849
mov dword [esp + 0xb0], 0x7000002a
mov eax, 0x7000002a
add ecx, 1
jb 0x46a730
jmp 0x46a849
mov dword [esp + 0xb0], 0
test esi, esi
je 0x46a7a7
mov edi, 0xffffffff
lea ebx, [esi + 0xb0]
jmp 0x46a7a2
mov eax, dword [esi + 8]
mov dword [esp + 0xc0], eax
mov al, byte [esi + 0xac]
mov byte [esp + 0xe8], al
mov dword [esp + 4], ebx
lea eax, [esp + 0xec]
mov dword [esp], eax
mov dword [esp + 8], 0x10
call fcn.007c51d0
add edi, 1
jb 0x46a770
mov ecx, dword [esp + 0x4c]
test ecx, ecx
je 0x46a7c5
mov eax, dword [ecx]
mov dword [esp + 0xb4], eax
mov eax, dword [ecx + 0x1e4]
mov dword [esp + 0xe0], eax
mov eax, dword [esp + 0x40]
test eax, eax
mov ebx, dword [ebp + 8]
mov edi, dword [esp + 0x2c]
je 0x46abbc
movsd xmm0, qword [eax]
movsd qword [esp + 0xb8], xmm0
mov dword [esp], eax
call fcn.0040b680
mov ecx, dword [esp + 0x40]
test eax, eax
sete al
movzx eax, al
mov dword [esp + 0xfc], eax
cmp dword [ecx + 0x64], 3
jne 0x46abc5
mov eax, 0xffffffff
mov dword [esp + 0x3c], edx
jmp 0x46a833
mov ecx, dword [esp + 0x40]
movzx ecx, word [ecx + 0xcc]
mov dword [esp + 0x3c], 0
add eax, 1
jb 0x46a820
mov dword [esp + 0x38], ecx
mov eax, dword [esp + 0x4c]
jmp 0x46a65e
mov edx, dword [esp + 0x38]
mov ecx, dword [esp + 0xb4]
mov dword [ebx + 0x394], ecx
mov ecx, dword [esp + 0x3c]
mov dword [ebx + 0x39c], ecx
mov dword [ebx + 0x398], edx
mov ecx, dword [esp + 0x100]
mov edx, dword [ecx + 0x1c]
mov dword [ebx + 0x3a4], edx
mov edx, dword [ecx + 0x38]
mov dword [ebx + 0x3b0], edx
mov ecx, dword [ecx + 0x3c]
mov dword [ebx + 0x3b4], ecx
mov dword [ebx + 0x3b8], eax
mov eax, 0xffffffff
test esi, esi
je 0x46a91d
mov dword [esp + 0x2c], edi
mov ecx, dword [esi + 0x20]
mov edx, dword [esi + 0x24]
mov edi, ecx
or edi, edx
je 0x46a94e
mov dword [ebx + 0x398], ecx
mov dword [ebx + 0x39c], edx
mov eax, dword [esi]
mov dword [ebx + 0x3a4], eax
mov eax, dword [esi + 0xc]
mov dword [ebx + 0x3ac], eax
call fcn.00455fb0
test eax, eax
je 0x46a953
mov eax, dword [esi + 0x24]
mov ecx, dword [esi + 0xc]
mov edx, dword [esi + 0x20]
mov dword [esp + 8], ecx
mov dword [esp + 4], eax
mov dword [esp], edx
call fcn.00427270
test eax, eax
je 0x46a953
mov ecx, dword [eax + 0xd0]
mov dword [ebx + 0x3c8], ecx
mov ecx, dword [eax + 0x18]
mov dword [ebx + 0x3cc], ecx
mov ecx, dword [eax + 0xcc]
mov dword [ebx + 0x3d0], ecx
mov dword [esp], eax
call fcn.004234b0
jmp 0x46a953
mov dword [esp + 0x2c], edi
jmp 0x46a94e
mov dword [ebx + 0x3c8], 0
mov dword [ebx + 0x3cc], 0
mov dword [ebx + 0x3d0], 0
add eax, 1
jb 0x46a930
mov esi, dword [esp + 0x4c]
test esi, esi
je 0x46a9e5
mov eax, dword [esi + 0x1e0]
mov dword [ebx + 0x394], eax
movsd xmm0, qword [esi + 0x378]
movsd qword [ebx + 0x3c0], xmm0
mov eax, dword [esi + 0x1a0]
mov dword [ebx + 0x3e0], eax
lea eax, [esi + 8]
lea ecx, [ebx + 0x3ed]
mov dword [esp + 8], eax
mov dword [esp], ecx
mov dword [esp + 4], 0x40
call fcn.004959f0
lea eax, [esi + 0x88]
lea ecx, [ebx + 0x42d]
mov dword [esp + 8], eax
mov dword [esp], ecx
mov dword [esp + 4], 0x40
call fcn.004959f0
mov dword [esp], esi
call fcn.0040b5f0
test eax, eax
je 0x46aa44
lea eax, [esi + 0x274]
lea ecx, [ebx + 0x46d]
mov dword [esp + 8], eax
mov dword [esp], ecx
jmp 0x46aa55
mov esi, 0xffffffff
lea edi, [ebx + 0x46d]
jmp 0x46aa3d
mov dword [ebx + 0x3c4], 0
mov dword [ebx + 0x3c0], 0
mov dword [ebx + 0x3e0], 0
mov dword [esp], edi
mov dword [esp + 8], 0x7d5559
mov dword [esp + 4], pe_nt_image_headers32
call fcn.004959f0
mov ecx, ebx
call fcn.0046ad30
add esi, 1
jb 0x46aa00
jmp 0x46aabe
lea eax, [ebx + 0x46d]
mov dword [esp], eax
mov dword [esp + 8], str.local
mov dword [esp + 4], pe_nt_image_headers32
call fcn.004959f0
cmp dword [ebx + 0x110], 1
jne 0x46aabe
mov edx, dword [esp + 0x4c]
mov eax, dword [edx + 0x1a0]
mov ecx, dword [edx + 0x198]
mov edx, dword [edx + 0x19c]
mov dword [esp + 8], eax
mov dword [esp + 4], edx
mov dword [esp], ecx
call fcn.0041d910
test eax, eax
jne 0x46aabe
mov dword [esp + 0xb0], 0x70000005
mov eax, dword [esp + 0x4c]
mov eax, dword [eax]
mov dword [esp], eax
mov dword [esp + 8], 0
mov dword [esp + 4], 0x46ade0
call fcn.00435c50
cmp dword [esp + 0xb0], 0
setne al
movzx eax, al
mov dword [esp + 0x14], eax
mov ecx, dword [esp + 0x4c]
mov dword [esp + 0xc], ecx
lea eax, [esp + 0xb0]
mov dword [esp + 4], eax
mov dword [esp], ebx
mov ebx, ecx
mov dword [esp + 0x10], 1
mov dword [esp + 8], 3
call fcn.00458d20
test ebx, ebx
mov edi, dword [esp + 0x2c]
je 0x46ab2f
test eax, eax
je 0x46ab2f
mov esi, 0xffffffff
jmp 0x46ab2a
mov eax, dword [ebx]
mov dword [esp], eax
mov dword [esp + 8], 0
mov dword [esp + 4], 0x46ade0
call fcn.00435c50
add esi, 1
jb 0x46ab10
cmp dword [esp + 0xb0], 0
sete al
movzx eax, al
mov dword [esp], eax
call fcn.005ae9a0
mov eax, dword [esp + 0x100]
mov esi, 0xffffffff
test eax, eax
je 0x46abaf
mov dword [esp], eax
mov dword [esp + 4], 2
call fcn.0064bf00
jmp 0x46abaf
mov dword [esp + 0x100], 0
mov dword [esp], edi
call fcn.00434c70
mov dword [esp], ebx
call fcn.00435360
mov eax, dword [esp + 0x44]
mov dword [esp], eax
call fcn.004235e0
mov eax, dword [esp + 0x74]
mov dword [esp], eax
call fcn.004234b0
mov eax, dword [esp + 0x70]
mov dword [esp], eax
call fcn.0041d160
add esi, 1
jb 0x46ab70
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov eax, dword [esp + 0x4c]
jmp 0x46a65e
mov eax, dword [ecx]
mov dword [esp + 0x38], eax
mov eax, dword [ecx + 4]
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x4c]
jmp 0x46a65e