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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0xa0
mov eax, dword [0x4353ac]
mov esi, 0x48d96c1e
mov edi, 0x48d96c1e
mov ebx, 0x6040f9d4
xor eax, ebp
mov dword [esp + 0x98], eax
mov eax, dword [0x435448]
mov ecx, dword [0x43544c]
lea edx, [eax - 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
mov edx, 0xbb3b10d9
sete al
sete byte [esp + 6]
cmove esi, edx
cmp ecx, 0xa
setl cl
setl byte [esp + 7]
cmovge esi, edi
xor cl, al
mov eax, 0xa310e52e
cmovne esi, edx
nop dword [eax]
cmp eax, 0x48d96c1d
jg 0x414e40
cmp eax, 0xa310e52e
je 0x414e61
cmp eax, 0xbb3b10d9
jne 0x414e20
jmp 0x414e8c
cmp eax, 0x48d96c1e
je 0x414e85
cmp eax, 0x6040f9d4
jne 0x414e20
push dword [ebp + 0xc]
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov dword [esp + 0x18], eax
mov eax, esi
jmp 0x414e20
movzx ecx, byte [esp + 6]
movzx eax, byte [esp + 7]
mov edx, ecx
xor dl, al
test al, al
mov eax, 0x48d96c1e
cmovne eax, ebx
test cl, cl
cmove eax, edi
test dl, dl
cmovne eax, ebx
jmp 0x414e20
mov eax, 0x6040f9d4
jmp 0x414e20
mov eax, dword [esp + 0x18]
mov dword [esp + 0x24], 0
mov dword [esp + 0x20], eax
mov eax, dword [ebp + 8]
mov dword [esp + 8], eax
mov eax, dword [esp + 8]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xc]
mov eax, dword [eax]
mov eax, dword [eax + 4]
mov ecx, dword [esp + 8]
movsd xmm0, qword [ecx + eax + 0x20]
mov eax, 0xaa2eeead
movsd qword [esp + 0x88], xmm0
jmp 0x414f10
mov eax, dword [esp + 0x30]
mov ecx, 0xd84b38cb
mov dword [esp + 0x4c], eax
mov eax, 0x47f69a71
cmp dword [esp + 0x4c], 0
cmove eax, ecx
mov ecx, dword [esp + 0x80]
mov dword [esp + 0x70], ecx
mov ecx, dword [esp + 0x84]
mov dword [esp + 0x6c], ecx
mov ecx, dword [esp + 0x4c]
mov dword [esp + 0x44], ecx
nop word cs:[eax + eax]
cmp eax, 0xf0089f8e
jg 0x414f80
cmp eax, 0xb381560e
jle 0x415000
cmp eax, 0xd512942b
jle 0x415169
cmp eax, 0xda1814c0
jg 0x415287
cmp eax, 0xd512942c
je 0x4152bd
cmp eax, 0xd84b38cb
jne 0x414f10
mov eax, dword [esp + 0x70]
mov ecx, 0xa2ffc86a
mov dword [esp + 0x58], eax
mov eax, dword [esp + 0x6c]
mov dword [esp + 0x5c], eax
xor eax, eax
cmp eax, dword [esp + 0x58]
mov eax, 0
sbb eax, dword [esp + 0x5c]
mov eax, 0x47f69a71
cmovl eax, ecx
jmp 0x414efe
cmp eax, 0x5341ce6c
jle 0x415050
cmp eax, 0x5e9b2471
jg 0x4151a4
cmp eax, 0x590448ff
jg 0x4152a2
cmp eax, 0x5341ce6d
je 0x4152d4
cmp eax, 0x5559d571
jne 0x414f10
mov eax, dword [esp + 0xc]
mov edx, 0x2fbf0802
mov eax, dword [eax]
mov eax, dword [eax + 4]
mov ecx, dword [esp + 8]
mov esi, dword [ecx + eax + 0x20]
mov ecx, dword [ecx + eax + 0x24]
mov eax, 0x76c1b046
add esi, edx
adc ecx, eax
sub esi, dword [esp + 0x20]
sbb ecx, dword [esp + 0x24]
sub esi, edx
mov dword [esp + 0x34], esi
sbb ecx, eax
mov eax, 0xda1814c1
mov dword [esp + 0x2c], ecx
jmp 0x414f10
cmp eax, 0xa405f55d
jg 0x4151e7
cmp eax, 0x9282f86d
je 0x4152e6
cmp eax, 0x9b25978d
je 0x415306
cmp eax, 0xa2ffc86a
jne 0x414f10
mov eax, dword [0x435598]
mov ecx, dword [0x43559c]
mov esi, 0x5e9b2472
mov edi, 0x9b25978d
jmp 0x415635
cmp eax, 0x36759ed1
jg 0x41523a
cmp eax, 0xf0089f8f
je 0x4153e9
cmp eax, 0xfb2b99c2
je 0x41542e
cmp eax, 0x28af864a
jne 0x414f10
mov eax, dword [esp + 0xc]
mov eax, dword [eax]
mov eax, dword [eax + 4]
mov ecx, dword [esp + 8]
mov ecx, dword [ecx + eax + 0x38]
mov eax, dword [esp + 0xc]
mov eax, dword [eax]
mov eax, dword [eax + 4]
mov edx, dword [esp + 8]
movsx eax, byte [edx + eax + 0x40]
push eax
call dword [sym.imp.MSVCP140.dll_public:_int___thiscall_std::basic_streambuf_char__struct_std::char_traits_char__::sputc_char_]
mov ecx, dword [0x4355a0]
mov esi, dword [0x4355a4]
mov ebx, 0x7b1b3279
lea edx, [ecx - 1]
imul edx, ecx
mov ecx, 0x26d93bcb
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete dl
sete byte [esp + 6]
cmove ecx, ebx
cmp esi, 0xa
mov esi, 0x26d93bcb
setl dh
setl byte [esp + 7]
cmovge ecx, esi
xor dh, dl
mov edx, 0x706d550f
cmovne ecx, ebx
nop word cs:[eax + eax]
nop dword [eax]
cmp edx, 0x706d550e
jg 0x415120
cmp edx, 0xf515fad9
je 0x41515d
cmp edx, 0x26d93bcb
jne 0x415100
mov edx, 0xf515fad9
jmp 0x415100
cmp edx, 0x7b1b3279
je 0x4154a0
cmp edx, 0x706d550f
jne 0x415100
movzx ebx, byte [esp + 6]
movzx edx, byte [esp + 7]
mov esi, 0x26d93bcb
mov edi, 0xf515fad9
mov dh, bl
xor dh, dl
cmovne esi, edi
test dl, dl
mov edx, esi
cmovne edx, edi
test bl, bl
cmove edx, esi
jmp 0x415100
cmp eax, 0xffffffff
mov edx, ecx
sete byte [esp + 0x18]
jmp 0x415100
cmp eax, 0xb381560f
je 0x4154b7
cmp eax, 0xbeb125ea
je 0x41550f
cmp eax, 0xbf20f930
jne 0x414f10
mov eax, dword [esp + 0x78]
mov dword [esp + 0x68], eax
mov eax, dword [esp + 0x7c]
mov dword [esp + 0x64], eax
mov eax, 0x36759ed2
jmp 0x414f10
cmp eax, 0x5e9b2472
je 0x415521
cmp eax, 0x5f4fb4ed
je 0x41560e
cmp eax, 0x6ce66fa4
jne 0x414f10
mov eax, dword [esp + 0x10]
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x14]
mov dword [esp + 0x40], 4
mov dword [esp + 0x38], eax
mov eax, 0xadcef2c1
jmp 0x414f10
cmp eax, 0xa405f55e
je 0x415620
cmp eax, 0xaa2eeead
je 0x415664
cmp eax, 0xadcef2c1
jne 0x414f10
mov eax, dword [esp + 0x3c]
mov ecx, 0xf0089f8f
mov dword [esp + 0x80], eax
mov eax, dword [esp + 0x38]
mov dword [esp + 0x84], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 0x48], eax
mov eax, 0xe0387b02
cmp dword [esp + 0x48], 0
jmp 0x41541e
cmp eax, 0x36759ed2
je 0x41569a
cmp eax, 0x47f69a71
je 0x4156e3
cmp eax, 0x4c5c89f8
jne 0x414f10
mov eax, dword [esp + 0xc]
mov eax, dword [eax]
mov eax, dword [eax + 4]
mov ecx, dword [esp + 8]
mov edx, dword [esp + 0x20]
mov edi, dword [esp + 0x24]
cmp edx, dword [ecx + eax + 0x20]
sbb edi, dword [ecx + eax + 0x24]
mov eax, 0xda1814c1
mov ecx, 0x5559d571
jmp 0x415682
cmp eax, 0xda1814c1
je 0x415712
cmp eax, 0xe0387b02
jne 0x414f10
jmp 0x414ece
cmp eax, 0x5c438ea4
je 0x415753
cmp eax, 0x59044900
jne 0x414f10
jmp 0x4157d9
cmp byte [esp + 0x1f], 0
mov eax, 0x9282f86d
mov ecx, 0x5f4fb4ed
cmovne eax, ecx
jmp 0x414f10
mov eax, 0x59044900
mov dword [esp + 0x60], 4
jmp 0x414f10
mov eax, dword [esp + 0x58]
mov ecx, dword [esp + 0x5c]
add eax, 0xffffffff
adc ecx, 0xffffffff
mov dword [esp + 0x70], eax
mov eax, 0xd84b38cb
mov dword [esp + 0x6c], ecx
jmp 0x414f10
mov eax, dword [esp + 0xc]
mov eax, dword [eax]
mov eax, dword [eax + 4]
mov ecx, dword [esp + 8]
mov ecx, dword [ecx + eax + 0x38]
mov eax, dword [esp + 0xc]
mov eax, dword [eax]
mov eax, dword [eax + 4]
mov edx, dword [esp + 8]
movsx eax, byte [edx + eax + 0x40]
push eax
call dword [sym.imp.MSVCP140.dll_public:_int___thiscall_std::basic_streambuf_char__struct_std::char_traits_char__::sputc_char_]
mov ecx, dword [0x4355a0]
mov esi, 0x7b1b3279
mov edi, 0x26d93bcb
lea edx, [ecx - 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
test ecx, edx
mov edx, dword [0x4355a4]
mov ecx, 0x26d93bcb
sete bl
sete byte [esp + 6]
cmove ecx, esi
cmp edx, 0xa
setl dl
setl byte [esp + 7]
cmovge ecx, edi
xor dl, bl
mov edx, 0x706d550f
cmovne ecx, esi
nop dword [eax + eax]
cmp edx, 0x706d550e
jg 0x4153a0
cmp edx, 0xf515fad9
je 0x4153dd
cmp edx, 0x26d93bcb
jne 0x415380
mov edx, 0xf515fad9
jmp 0x415380
cmp edx, 0x7b1b3279
je 0x415785
cmp edx, 0x706d550f
jne 0x415380
movzx ebx, byte [esp + 6]
movzx edx, byte [esp + 7]
mov esi, 0x26d93bcb
mov edi, 0xf515fad9
mov dh, bl
xor dh, dl
cmovne esi, edi
test dl, dl
mov edx, esi
cmovne edx, edi
test bl, bl
cmove edx, esi
jmp 0x415380
cmp eax, 0xffffffff
mov edx, ecx
sete byte [esp + 0x18]
jmp 0x415380
mov eax, dword [esp + 0xc]
mov eax, dword [eax]
mov eax, dword [eax + 4]
mov ecx, dword [esp + 8]
mov ecx, dword [ecx + eax + 0x38]
mov eax, dword [ecx]
push dword [esp + 0x24]
push dword [esp + 0x24]
push dword [ebp + 0xc]
call dword [eax + 0x24]
xor edx, dword [esp + 0x24]
xor eax, dword [esp + 0x20]
mov ecx, 0xe0387b02
or eax, edx
mov eax, 0xbeb125ea
mov edx, dword [esp + 0x48]
cmove eax, ecx
mov dword [esp + 0x30], edx
jmp 0x414f10
mov eax, dword [0x435598]
mov ecx, dword [0x43559c]
mov esi, 0x5c438ea4
mov edi, 0xbf20f930
lea edx, [eax - 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov ebx, 0x79629614
cmovne esi, edi
test eax, edx
mov edx, 0x56c093a5
mov eax, esi
cmove eax, edi
cmp ecx, 0xa
mov ecx, dword [esp + 0x10]
mov edi, 0x79629614
cmovge eax, esi
mov esi, dword [esp + 0x14]
not edi
add ecx, edx
mov edx, 0x56c093a5
not edx
adc esi, ebx
add edx, ecx
adc esi, edi
mov dword [esp + 0x78], edx
mov dword [esp + 0x7c], esi
jmp 0x414f10
cmp byte [esp + 0x18], 0
mov eax, 0xa405f55e
mov ecx, 0x6ce66fa4
cmovne eax, ecx
jmp 0x414f10
mov eax, dword [esp + 0xc]
mov eax, dword [eax]
mov eax, dword [eax + 4]
mov ecx, dword [esp + 8]
mov eax, dword [ecx + eax + 0x14]
mov ecx, eax
xor ecx, 0xfffffe3f
and ecx, eax
mov eax, 0x36759ed2
cmp ecx, 0x40
mov ecx, 0xadcef2c1
cmove eax, ecx
mov ecx, dword [esp + 0x50]
mov dword [esp + 0x68], ecx
mov ecx, dword [esp + 0x54]
mov dword [esp + 0x40], 0
mov dword [esp + 0x64], ecx
mov ecx, dword [esp + 0x50]
mov dword [esp + 0x3c], ecx
mov ecx, dword [esp + 0x54]
mov dword [esp + 0x38], ecx
jmp 0x414f10
mov eax, 0xe0387b02
mov dword [esp + 0x30], 4
jmp 0x414f10
mov eax, dword [esp + 0xc]
mov eax, dword [eax]
mov eax, dword [eax + 4]
mov ecx, dword [esp + 8]
mov ecx, dword [ecx + eax + 0x38]
mov eax, dword [esp + 0xc]
mov eax, dword [eax]
mov eax, dword [eax + 4]
mov edx, dword [esp + 8]
movsx eax, byte [edx + eax + 0x40]
push eax
call dword [sym.imp.MSVCP140.dll_public:_int___thiscall_std::basic_streambuf_char__struct_std::char_traits_char__::sputc_char_]
mov ecx, dword [0x4355a0]
mov edx, dword [0x4355a4]
mov ebx, 0x26d93bcb
mov edi, 0x7b1b3279
lea esi, [ecx - 1]
imul esi, ecx
not esi
or esi, 0xfffffffe
cmp esi, 0xffffffff
sete cl
cmp edx, 0xa
setl ch
xor ch, cl
cmovne ebx, edi
cmp esi, 0xffffffff
mov ecx, ebx
sete byte [esp + 6]
cmove ecx, edi
cmp edx, 0xa
mov edx, 0x706d550f
cmovge ecx, ebx
setl byte [esp + 7]
nop word [eax + eax]
cmp edx, 0x706d550e
jg 0x4155c0
cmp edx, 0xf515fad9
je 0x415602
cmp edx, 0x26d93bcb
jne 0x4155a0
mov edx, 0xf515fad9
jmp 0x4155a0
cmp edx, 0x7b1b3279
je 0x4157cb
cmp edx, 0x706d550f
jne 0x4155a0
movzx ebx, byte [esp + 6]
movzx edx, byte [esp + 7]
mov edi, 0xf515fad9
mov esi, 0x26d93bcb
mov bh, dl
xor bh, bl
test dl, dl
mov edx, 0x26d93bcb
cmovne edx, edi
test bl, bl
cmove edx, esi
test bh, bh
cmovne edx, edi
jmp 0x4155a0
cmp eax, 0xffffffff
mov edx, ecx
sete byte [esp + 0x18]
jmp 0x4155a0
mov eax, 0x47f69a71
mov dword [esp + 0x44], 4
jmp 0x414f10
mov eax, dword [0x435598]
mov ecx, dword [0x43559c]
mov esi, 0x5c438ea4
mov edi, 0xfb2b99c2
lea edx, [eax - 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete al
cmp ecx, 0xa
setl ah
xor ah, al
cmovne esi, edi
cmp edx, 0xffffffff
mov eax, esi
cmove eax, edi
cmp ecx, 0xa
cmovge eax, esi
jmp 0x414f10
mov eax, dword [esp + 0x88]
mov ecx, dword [esp + 0x8c]
cmp eax, 1
mov eax, 0x4c5c89f8
sbb ecx, 0
mov ecx, 0xda1814c1
cmovl eax, ecx
mov dword [esp + 0x34], 0
mov dword [esp + 0x2c], 0
jmp 0x414f10
mov eax, dword [esp + 0x68]
mov dword [esp + 0x40], 0
mov ecx, 0x28af864a
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x64]
mov dword [esp + 0x14], eax
xor eax, eax
cmp eax, dword [esp + 0x10]
mov eax, 0
sbb eax, dword [esp + 0x14]
mov eax, 0xadcef2c1
cmovl eax, ecx
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x3c], ecx
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x38], ecx
jmp 0x414f10
mov eax, dword [esp + 0xc]
mov eax, dword [eax]
mov eax, dword [eax + 4]
mov ecx, dword [esp + 8]
mov edx, dword [esp + 0x44]
mov dword [ecx + eax + 0x24], 0
mov dword [ecx + eax + 0x20], 0
mov eax, 0x59044900
mov dword [esp + 0x60], edx
jmp 0x414f10
mov eax, dword [esp + 0x34]
lea ecx, [esp + 0x90]
mov dword [esp + 0x74], ecx
mov dword [esp + 0x50], eax
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x54], eax
mov eax, dword [esp + 0x74]
push dword [ebp + 8]
call fcn.00429ac0
cmp byte [esp + 0x94], 0
mov eax, 0xb381560f
mov ecx, 0x5341ce6d
cmove eax, ecx
jmp 0x414f10
mov eax, dword [esp + 0x10]
mov eax, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
mov eax, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
mov eax, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
mov eax, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
mov eax, dword [esp + 0x14]
mov eax, 0xfb2b99c2
jmp 0x414f10
mov al, byte [esp + 0x18]
mov esi, 0xd512942c
mov edi, 0x5e9b2472
mov byte [esp + 0x1f], al
mov eax, dword [0x435598]
lea ecx, [eax - 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov eax, 0x5e9b2472
sete cl
cmove eax, esi
cmp dword [0x43559c], 0xa
setl dl
cmovge eax, edi
xor dl, cl
cmovne eax, esi
jmp 0x414f10
mov al, byte [esp + 0x18]
mov eax, 0x9b25978d
jmp 0x414f10
mov eax, dword [esp + 0xc]
mov eax, dword [eax]
mov eax, dword [eax + 4]
mov edx, dword [esp + 8]
mov edi, dword [esp + 0x60]
lea ecx, [edx + eax]
mov eax, dword [edx + eax + 0xc]
mov edx, eax
and eax, 0x622d339d
not edx
mov esi, edx
and esi, 0x9dd2cc62
or eax, esi
mov esi, edi
and edi, 0x622d339d
not esi
or edx, esi
and esi, 0x9dd2cc62
or edi, esi
not edx
xor edi, eax
or edx, edi
push 0
push edx
call dword [sym.imp.MSVCP140.dll_public:_void___thiscall_std::basic_ios_char__struct_std::char_traits_char__::clear_int__bool_]
lea ecx, [esp + 0x90]
call fcn.00429ef0
mov eax, dword [esp + 0x74]
mov ecx, dword [esp + 0x98]
xor ecx, ebp
call fcn.0043082b
mov eax, dword [ebp + 8]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret