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

Disassembly:
push 0xffffffffffffffff
push 0x427097
mov eax, dword fs:[0]
push eax
sub esp, 0x110
mov eax, dword [0x4323e0]
xor eax, esp
mov dword [esp + 0x108], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x4323e0]
xor eax, esp
push eax
lea eax, [esp + 0x124]
mov dword fs:[0], eax
mov eax, dword [esp + 0x134]
xor ebp, ebp
mov ebx, ecx
mov dword [esp + 0x38], eax
mov dword [esp + 0x20], ebx
mov dword [esp + 0x1c], 1
mov dword [esp + 0xf4], ebp
mov dword [esp + 0xf8], ebp
mov dword [esp + 0xfc], ebp
mov dword [esp + 0x12c], ebp
mov esi, dword [ebx + 4]
cmp esi, dword [ebx + 8]
mov dword [esp + 0x34], ebp
jbe 0x408dd3
call fcn.0041419f
mov edi, esi
mov esi, dword [ebx + 8]
cmp dword [ebx + 4], esi
mov dword [esp + 0x4c], edi
jbe 0x408de6
call fcn.0041419f
cmp ebx, ebp
je 0x408dee
cmp ebx, ebx
je 0x408df3
call fcn.0041419f
cmp edi, esi
je 0x4092c8
mov dword [esp + 0x118], 0xf
mov dword [esp + 0x114], ebp
mov byte [esp + 0x104], 0
cmp ebx, ebp
mov byte [esp + 0x12c], 1
jne 0x408e26
call fcn.0041419f
cmp edi, dword [ebx + 8]
jb 0x408e30
call fcn.0041419f
lea ecx, [esp + 0x44]
push ecx
push edi
push 1
mov eax, 0x433a64
call fcn.00409d30
test eax, eax
jne 0x408e68
mov byte [esp + 0x12c], al
cmp dword [esp + 0x118], 0x10
jb 0x409231
mov edx, dword [esp + 0x104]
push edx
jmp 0x409229
cmp edi, dword [ebx + 8]
jb 0x408e72
call fcn.0041419f
push ebp
lea eax, [esp + 0x104]
push eax
call fcn.00409de0
test eax, eax
je 0x40920f
lea ecx, [esp + 0x100]
push ecx
lea edx, [esp + 0x68]
push edx
call fcn.0040ad70
mov byte [esp + 0x12c], 2
mov eax, dword [esp + 0x64]
mov eax, dword [eax + 4]
mov ecx, dword [esp + eax + 0x74]
lea eax, [esp + eax + 0x64]
and ecx, 0xfffff9ff
or ecx, 0x800
mov dword [eax + 0x10], ecx
lea edx, [esp + 0x1b]
push edx
push ecx
lea eax, [esp + 0x2c]
push eax
push ecx
lea ecx, [esp + 0x2a]
push ecx
push ecx
mov eax, ecx
lea edx, [esp + 0x44]
push edx
push ecx
push eax
push ecx
lea ecx, [esp + 0x64]
push ecx
push ecx
mov edx, eax
push edx
push ecx
lea eax, [esp + 0x60]
push eax
push ecx
mov ecx, edx
push ecx
push ecx
lea edx, [esp + 0x78]
push edx
push ecx
lea eax, [esp + 0x6b]
push eax
lea ecx, [esp + 0xb8]
push ecx
call fcn.0040f080
add esp, 0xc
push eax
call fcn.0040a410
add esp, 4
push eax
call fcn.0040f080
add esp, 0xc
push eax
call fcn.0040a230
add esp, 4
push eax
call fcn.0040f080
add esp, 0xc
push eax
call fcn.0040a5c0
add esp, 4
push eax
call fcn.0040f080
add esp, 0xc
push eax
call fcn.0040a5c0
add esp, 4
push eax
call fcn.0040f080
add esp, 0xc
push eax
call fcn.0040a5c0
add esp, 4
push eax
call fcn.0040f080
mov edx, dword [esp + 0x6c]
add esp, 8
mov eax, dword [edx + 4]
test byte [esp + eax + 0x6c], 6
jne 0x409243
mov ebp, dword [esp + 0x38]
mov esi, dword [ebp + 0x2c]
add ebp, 0x28
cmp esi, dword [ebp + 8]
jbe 0x408f8b
call fcn.0041419f
mov ebx, ebp
lea ecx, [ecx]
mov edi, dword [ebp + 8]
cmp dword [ebp + 4], edi
jbe 0x408f9d
call fcn.0041419f
test ebx, ebx
je 0x408fa5
cmp ebx, ebp
je 0x408faa
call fcn.0041419f
cmp esi, edi
je 0x409060
test ebx, ebx
jne 0x408fbb
call fcn.0041419f
cmp esi, dword [ebx + 8]
jb 0x408fc5
call fcn.0041419f
mov ecx, dword [esp + 0x30]
cmp dword [esi], ecx
je 0x408fdc
cmp esi, dword [ebx + 8]
jb 0x408fd7
call fcn.0041419f
add esi, 0x10
jmp 0x408f90
cmp esi, dword [ebx + 8]
jb 0x408fe6
call fcn.0041419f
mov edx, dword [esp + 0x28]
cmp dword [esi + 4], edx
je 0x40900b
cmp esi, dword [ebx + 8]
jb 0x408ff9
call fcn.0041419f
mov eax, dword [esp + 0x28]
mov edi, 2
mov dword [esi + 4], eax
mov dword [esp + 0x1c], edi
jmp 0x409010
mov edi, 2
cmp esi, dword [ebx + 8]
jb 0x40901a
call fcn.0041419f
mov ecx, dword [esi + 8]
cmp ecx, dword [esp + 0x2c]
je 0x409038
cmp esi, dword [ebx + 8]
jb 0x40902d
call fcn.0041419f
mov edx, dword [esp + 0x2c]
mov dword [esi + 8], edx
mov dword [esp + 0x1c], edi
cmp esi, dword [ebx + 8]
jb 0x409042
call fcn.0041419f
mov eax, dword [esi + 0xc]
cmp eax, dword [esp + 0x24]
je 0x409060
cmp esi, dword [ebx + 8]
jb 0x409055
call fcn.0041419f
mov ecx, dword [esp + 0x24]
mov dword [esi + 0xc], ecx
mov dword [esp + 0x1c], edi
mov edi, dword [ebp + 8]
cmp dword [ebp + 4], edi
jbe 0x40906d
call fcn.0041419f
test ebx, ebx
je 0x409075
cmp ebx, ebp
je 0x40907a
call fcn.0041419f
cmp esi, edi
jne 0x4090b1
mov edx, dword [esp + 0x30]
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x2c]
mov dword [esp + 0x50], edx
mov edx, dword [esp + 0x24]
lea ebx, [esp + 0x50]
mov esi, ebp
mov dword [esp + 0x54], eax
mov dword [esp + 0x58], ecx
mov dword [esp + 0x5c], edx
call fcn.0040ab00
mov dword [esp + 0x1c], 2
mov ecx, dword [esp + 0x64]
mov edx, dword [ecx + 4]
add dword [esp + 0x34], 1
lea eax, [esp + 0xb4]
mov dword [esp + 0x44], eax
mov dword [esp + edx + 0x64], vtable.std::basic_istringstream_char__struct_std::char_traits_char___class_std::allocator_char__.0
test byte [esp + 0xac], 1
lea eax, [esp + 0x6c]
mov dword [esp + 0x60], eax
mov dword [esp + 0x6c], vtable.std::basic_stringbuf_char__struct_std::char_traits_char___class_std::allocator_char__.0
je 0x4090f9
mov ecx, dword [esp + 0x7c]
mov eax, dword [ecx]
push eax
call fcn.00413c50
add esp, 4
mov edx, dword [esp + 0x7c]
mov dword [edx], 0
mov eax, dword [esp + 0x8c]
mov dword [eax], 0
mov ecx, dword [esp + 0x9c]
mov dword [ecx], 0
mov edx, dword [esp + 0x80]
mov dword [edx], 0
mov eax, dword [esp + 0x90]
mov dword [eax], 0
mov ecx, dword [esp + 0xa0]
mov dword [ecx], 0
and dword [esp + 0xac], 0xfffffffe
mov dword [esp + 0xa8], 0
mov dword [esp + 0x6c], vtable.std::basic_streambuf_char__struct_std::char_traits_char__.0
mov byte [esp + 0x12c], 4
mov eax, dword [esp + 0xa4]
test eax, eax
mov ebx, eax
je 0x4091c2
mov edi, dword [eax]
test edi, edi
je 0x4091b9
push 0
lea ecx, [esp + 0x44]
call fcn.004133bd
mov eax, dword [edi + 4]
test eax, eax
jbe 0x409197
cmp eax, 0xffffffff
jae 0x409197
add eax, 0xffffffff
mov dword [edi + 4], eax
mov esi, dword [edi + 4]
neg esi
sbb esi, esi
not esi
lea ecx, [esp + 0x40]
and esi, edi
call fcn.004133de
test esi, esi
je 0x4091b9
mov edx, dword [esi]
mov eax, dword [edx]
push 1
mov ecx, esi
call eax
push ebx
call fcn.00413c50
add esp, 4
lea ecx, [esp + 0x70]
mov byte [esp + 0x12c], 3
call fcn.0041340d
mov byte [esp + 0x12c], 1
mov ecx, dword [esp + 0x64]
mov edx, dword [ecx + 4]
lea eax, [esp + 0xb4]
mov dword [esp + edx + 0x64], vtable.std::basic_istream_char__struct_std::char_traits_char__.0
push eax
mov dword [esp + 0xb8], vtable.std::ios_base.0
call fcn.004137a1
mov ebx, dword [esp + 0x24]
mov edi, dword [esp + 0x50]
add esp, 4
xor ebp, ebp
mov byte [esp + 0x12c], 0
cmp dword [esp + 0x118], 0x10
jb 0x409231
mov ecx, dword [esp + 0x104]
push ecx
call fcn.00413c50
add esp, 4
cmp edi, dword [ebx + 8]
jb 0x40923b
call fcn.0041419f
add edi, 0x1c
jmp 0x408dd5
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x3c]
push edx
mov edx, dword [esp + 0x2c]
push eax
mov eax, dword [esp + 0x38]
push ecx
push edx
push eax
push str.CRcvDevInfo::ParseDevice2_Err__2x__2x__2x__2x__2x__r_n
push 0x40000
push 0x433970
call fcn.00410c40
add esp, 0x20
lea ecx, [esp + 0xb4]
mov dword [esp + 0x1c], ebp
mov byte [esp + 0x12c], 1
call fcn.0040ae00
lea ecx, [esp + 0xb4]
push ecx
mov dword [esp + 0xb8], vtable.std::ios_base.0
call fcn.004137a1
add esp, 4
mov byte [esp + 0x12c], 0
cmp dword [esp + 0x118], 0x10
jb 0x4092c8
mov edx, dword [esp + 0x104]
push edx
call fcn.00413c50
add esp, 4
mov eax, dword [esp + 0x38]
cmp dword [eax + 0x40], ebp
jne 0x4092d8
mov ecx, dword [esp + 0x34]
mov dword [eax + 0x40], ecx
mov esi, dword [ebx + 8]
cmp dword [ebx + 4], esi
jbe 0x4092e5
call fcn.0041419f
mov eax, dword [esp + 0x20]
mov ebx, dword [eax + 4]
cmp ebx, dword [eax + 8]
jbe 0x4092f6
call fcn.0041419f
cmp ebx, esi
je 0x409383
mov edx, dword [esp + 0x20]
mov edi, dword [edx + 8]
mov ecx, edi
sub ecx, esi
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
lea ecx, [eax*8]
sub ecx, eax
cmp esi, edi
lea ebp, [ebx + ecx*4]
je 0x409344
sub ebx, esi
mov edi, edi
push 0xffffffffffffffff
push 0
push esi
lea ecx, [ebx + esi]
call fcn.00401690
add esi, 0x1c
cmp esi, edi
jne 0x409330
mov edx, dword [esp + 0x20]
mov edi, dword [edx + 8]
cmp ebp, edi
je 0x40937c
lea esi, [ebp + 0x18]
xor ebx, ebx
cmp dword [esi], 0x10
jb 0x409365
mov eax, dword [esi - 0x14]
push eax
call fcn.00413c50
add esp, 4
mov dword [esi], 0xf
mov dword [esi - 4], ebx
mov byte [esi - 0x14], 0
add esi, 0x1c
lea ecx, [esi - 0x18]
cmp ecx, edi
jne 0x409354
mov edx, dword [esp + 0x20]
mov dword [edx + 8], ebp
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x124]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x108]
xor ecx, esp
call fcn.00413bbc
add esp, 0x11c
ret 4