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

Disassembly:
push 0x44
mov eax, 0x4ae5e7
call fcn.004a7676
mov edi, ecx
mov dword [ebp - 0x14], edi
call fcn.00445a8c
push 0x3f
pop eax
mov word [ebp - 0x3c], ax
lea esi, [edi + 0xa8]
xor eax, eax
xor ebx, ebx
inc eax
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x1c], eax
mov ecx, esi
mov dword [ebp - 0x38], eax
lea eax, [ebp - 0x3c]
push eax
mov dword [ebp - 0x30], ebx
call fcn.0044616e
test eax, eax
je 0x44a262
mov ecx, edi
call fcn.00445a8c
movzx edx, word [esi]
push 0x3e
mov eax, edx
mov dword [ebp - 0x20], ebx
mov dword [ebp - 0x18], eax
pop ecx
mov dword [ebp - 0x24], ecx
cmp eax, 0x3d
ja 0x449bcd
je 0x449b92
mov ecx, edx
movzx ecx, cx
push 0x21
mov dword [ebp - 0x28], ecx
pop ecx
push 0x3e
sub eax, ecx
pop ecx
je 0x449b8f
sub eax, 6
je 0x44a063
sub eax, 1
je 0x4499b7
sub eax, 0x14
jne 0x449be8
movzx eax, word [edi + 0xb8]
mov esi, eax
mov dword [ebp - 0x14], esi
push 0x21
pop esi
cmp ax, si
lea esi, [edi + 0xa8]
je 0x449971
push 0x3d
pop eax
cmp word [ebp - 0x14], ax
jne 0x44a049
mov ecx, edi
call fcn.00445a8c
mov ecx, edi
call fcn.00445a8c
push 0xc
call fcn.004a43b6
mov esi, eax
pop ecx
mov dword [ebp - 0x2c], esi
mov dword [ebp - 4], 1
mov ecx, edi
mov eax, dword [ebp + 8]
mov eax, dword [eax]
or eax, 0x10
push eax
call fcn.00445acc
push 0x21
mov dword [esi + 4], eax
xor eax, eax
pop ecx
cmp word [ebp - 0x14], cx
setne al
jmp 0x449bbf
push 0x28
call fcn.004a43b6
pop ecx
mov ecx, eax
mov dword [ebp - 0x2c], eax
call fcn.0044bc93
mov esi, eax
lea ecx, [edi + 0x14]
push esi
mov dword [ebp - 0x14], esi
call fcn.0044618f
push 0x3f
pop eax
mov word [ebp - 0x3c], ax
lea ecx, [edi + 0xb8]
lea eax, [ebp - 0x3c]
mov dword [ebp - 0x38], 1
push eax
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x30], ebx
call fcn.0044616e
mov ecx, edi
test eax, eax
je 0x449a11
mov eax, dword [ebp + 8]
push eax
call fcn.004498af
mov dword [esi + 0x1c], eax
jmp 0x449b52
call fcn.00445a8c
mov eax, dword [edi + 0xb0]
push 0xc
mov dword [ebp - 0x18], eax
call fcn.004a43b6
mov esi, eax
pop ecx
mov dword [ebp - 0x2c], esi
mov dword [ebp - 4], 6
mov ecx, edi
mov eax, dword [ebp + 8]
push dword [eax]
call fcn.00445acc
push esi
lea ecx, [edi + 0x14]
mov dword [esi], vtable.CAssertElxT_0_.0
mov dword [esi + 4], eax
mov dword [esi + 8], 1
call fcn.0044618f
mov eax, dword [ebp - 0x14]
mov edx, 0x4c4c40
mov dword [eax + 0x1c], esi
lea ecx, [eax + 8]
mov esi, dword [edi + 0xb0]
mov eax, dword [edi + 0x90]
sub esi, dword [ebp - 0x18]
test eax, eax
push ecx
cmovne edx, eax
mov eax, dword [ebp - 0x18]
push esi
lea eax, [edx + eax*2]
push eax
call fcn.0044bf67
mov eax, ebx
mov dword [ebp - 0x4c], ebx
mov dword [ebp - 0x48], ebx
mov dword [ebp - 0x50], vtable.CBufferT_char_.0
mov dword [ebp - 0x40], ebx
mov dword [ebp - 0x44], eax
mov dword [ebp - 4], 7
mov esi, dword [ebp - 0x18]
cmp esi, dword [edi + 0xb0]
jge 0x449afc
cmp esi, dword [edi + 0x94]
jl 0x449abb
mov eax, ebx
jmp 0x449ac5
mov eax, dword [edi + 0x90]
movzx eax, word [eax + esi*2]
movzx ecx, al
xor edx, edx
mov dword [ebp - 0x18], eax
cmp cx, word [ebp - 0x18]
movzx eax, al
push ecx
cmove edx, eax
lea ecx, [ebp - 0x50]
push 1
lea eax, [ebp - 0x10]
mov byte [ebp - 0x10], dl
push eax
call fcn.0044b7b6
inc esi
cmp esi, dword [edi + 0xb0]
jl 0x449aaf
mov eax, dword [ebp - 0x44]
mov dword [ebp - 0x18], eax
test eax, eax
jne 0x449b03
mov dword [ebp - 0x18], 0x4c4cfc
lea edx, [ebp - 0x28]
lea ecx, [ebp - 0x18]
call fcn.004488e4
test eax, eax
je 0x449b28
mov eax, dword [ebp - 0x18]
cmp byte [eax], 0
jne 0x449b28
mov esi, dword [ebp - 0x14]
mov eax, dword [ebp - 0x28]
mov dword [esi + 4], eax
mov dword [esi + 0x1c], ebx
jmp 0x449b38
mov esi, dword [ebp - 0x14]
lea ecx, [edi + 0x78]
push esi
or dword [esi + 4], 0xffffffff
call fcn.0044bd46
mov ecx, edi
call fcn.00445a8c
or dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x44]
test eax, eax
je 0x449b52
push eax
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
pop ecx
mov eax, dword [ebp + 8]
mov ecx, edi
mov eax, dword [eax]
mov dword [ebp - 0x28], eax
lea eax, [ebp - 0x28]
push eax
call fcn.00446a3c
mov dword [esi + 0x20], eax
cmp word [edi + 0xa8], 0x7c
jne 0x449b87
mov ecx, edi
call fcn.00445a8c
mov eax, dword [ebp + 8]
mov ecx, edi
push dword [eax]
call fcn.00445acc
mov ebx, eax
mov dword [esi + 0x24], ebx
jmp 0x44a32d
mov dword [ebp - 0x1c], ebx
mov ecx, edi
call fcn.00445a8c
push 0xc
call fcn.004a43b6
mov esi, eax
pop ecx
mov dword [ebp - 0x2c], esi
mov dword [ebp - 4], ebx
mov ecx, edi
mov eax, dword [ebp + 8]
mov eax, dword [eax]
and eax, 0xffffffef
push eax
call fcn.00445acc
mov dword [esi + 4], eax
mov eax, dword [ebp - 0x1c]
mov dword [esi], vtable.CAssertElxT_0_.0
mov dword [esi + 8], eax
jmp 0x44a250
sub eax, ecx
je 0x44a220
sub eax, 0x12
je 0x44a049
dec eax
sub eax, 1
je 0x449e4e
test dx, dx
je 0x449c13
mov eax, dword [ebp - 0x18]
movzx ecx, ax
movzx eax, cx
push eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isspace]
pop ecx
test eax, eax
je 0x449c13
mov ecx, edi
call fcn.00445a8c
movzx eax, word [esi]
mov ecx, eax
test ax, ax
jne 0x449bf3
movzx eax, word [esi]
mov ecx, eax
cmp eax, 0x30
jb 0x449ce3
cmp eax, 0x39
ja 0x449ce3
mov dword [ebp - 0x4c], ebx
mov dword [ebp - 0x48], ebx
mov dword [ebp - 0x50], vtable.CBufferT_char_.0
mov dword [ebp - 0x40], ebx
mov dword [ebp - 0x44], ebx
push 0x29
mov dword [ebp - 4], 8
pop eax
movzx ecx, cx
cmp cx, ax
je 0x449c83
movzx eax, cl
cmp ax, cx
jne 0x449c5b
mov al, byte [esi]
jmp 0x449c5d
mov al, bl
push ecx
mov byte [ebp + 8], al
lea ecx, [ebp - 0x50]
push 1
lea eax, [ebp + 8]
push eax
call fcn.0044b7b6
mov ecx, edi
call fcn.00445a8c
movzx eax, word [esi]
push 0x29
mov ecx, eax
test ax, ax
pop eax
jne 0x449c47
mov dword [ebp + 8], ebx
lea edx, [ebp + 8]
mov ebx, dword [ebp - 0x44]
lea ecx, [ebp - 0x28]
test ebx, ebx
mov eax, 0x4c4cfc
cmovne eax, ebx
mov dword [ebp - 0x28], eax
call fcn.004488e4
push 0x20
call fcn.004a43b6
pop ecx
mov dword [ebp - 0x2c], eax
mov ecx, eax
push dword [ebp + 8]
call fcn.0044bc20
mov esi, eax
lea ecx, [edi + 0x14]
push esi
call fcn.0044618f
lea ecx, [edi + 0x3c]
push esi
call fcn.0044bcaa
or dword [ebp - 4], 0xffffffff
test ebx, ebx
je 0x44a32d
push ebx
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
pop ecx
jmp 0x44a32d
mov eax, dword [ebp + 8]
mov ecx, esi
mov dword [ebp - 0x38], 1
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x30], ebx
mov eax, dword [eax]
mov dword [ebp - 0x14], eax
xor eax, eax
mov word [ebp - 0x3c], ax
lea eax, [ebp - 0x3c]
push eax
call fcn.0044616e
push 0x28
pop ecx
push 0x3a
pop edx
test eax, eax
jne 0x449def
push 0x29
pop eax
movzx ecx, word [esi]
cmp cx, dx
je 0x449dec
cmp cx, ax
je 0x449dec
push 0x28
pop eax
mov word [ebp - 0x4c], ax
mov ecx, esi
lea eax, [ebp - 0x4c]
mov dword [ebp - 0x48], 1
push eax
mov dword [ebp - 0x44], ebx
mov dword [ebp - 0x40], ebx
call fcn.0044616e
test eax, eax
jne 0x449de9
movzx eax, word [esi]
mov ecx, ebx
cmp eax, 0x53
ja 0x449d84
je 0x449d99
sub eax, 0x2d
je 0x449d7b
sub eax, 0x1a
je 0x449da2
dec eax
sub eax, 1
je 0x449d9e
sub eax, 4
jne 0x449da5
push 2
jmp 0x449da4
mov dword [ebp - 0x20], 1
jmp 0x449daa
sub eax, 0x67
je 0x449da2
dec eax
sub eax, 1
je 0x449d9e
sub eax, 4
je 0x449d77
sub eax, 6
jne 0x449da5
xor ecx, ecx
inc ecx
jmp 0x449da5
push 8
jmp 0x449da4
push 4
pop ecx
cmp dword [ebp - 0x20], ebx
je 0x449db1
not ecx
and dword [ebp - 0x14], ecx
jmp 0x449db4
or dword [ebp - 0x14], ecx
mov ecx, edi
call fcn.00445a8c
xor eax, eax
mov dword [ebp - 0x38], 1
mov word [ebp - 0x3c], ax
mov ecx, esi
lea eax, [ebp - 0x3c]
mov dword [ebp - 0x34], ebx
push eax
mov dword [ebp - 0x30], ebx
call fcn.0044616e
push 0x29
test eax, eax
pop eax
push 0x3a
pop edx
je 0x449d1a
jmp 0x449dec
push 0x3a
pop edx
push 0x28
pop ecx
cmp word [esi], dx
je 0x449e26
lea eax, [ebp - 0x4c]
mov word [ebp - 0x4c], cx
push eax
mov ecx, esi
mov dword [ebp - 0x48], 1
mov dword [ebp - 0x44], ebx
mov dword [ebp - 0x40], ebx
call fcn.0044616e
test eax, eax
jne 0x449e2d
mov ecx, dword [ebp + 8]
mov eax, dword [ebp - 0x14]
push ebx
mov dword [ecx], eax
mov ecx, edi
call fcn.00446c30
jmp 0x449e38
mov ecx, edi
call fcn.00445a8c
mov eax, dword [ebp - 0x14]
mov ecx, edi
push eax
call fcn.00445acc
mov esi, eax
jmp 0x44a32d
movzx eax, cx
push eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isspace]
pop ecx
test eax, eax
je 0x449e5f
mov ecx, edi
call fcn.00445a8c
movzx eax, word [esi]
mov ecx, eax
test ax, ax
jne 0x449e3f
movzx edx, word [esi]
mov eax, edx
push 0x27
mov dword [ebp + 8], eax
pop eax
push 0x3c
pop ecx
cmp dx, cx
je 0x449f43
cmp dx, ax
je 0x449f40
mov ecx, ebx
mov dword [ebp - 0x4c], ebx
mov dword [ebp - 0x48], ebx
mov dword [ebp - 0x50], vtable.CBufferT_char_.0
mov dword [ebp - 0x40], ebx
mov dword [ebp - 0x44], ecx
mov dword [ebp - 4], 5
test dx, dx
je 0x449ee7
mov eax, edx
push 0x29
movzx ecx, ax
pop eax
movzx ecx, cx
cmp cx, ax
je 0x449ee4
movzx eax, cl
cmp ax, cx
jne 0x449ebc
mov al, byte [esi]
jmp 0x449ebe
mov al, bl
push ecx
mov byte [ebp + 8], al
lea ecx, [ebp - 0x50]
push 1
lea eax, [ebp + 8]
push eax
call fcn.0044b7b6
mov ecx, edi
call fcn.00445a8c
movzx eax, word [esi]
push 0x29
mov ecx, eax
test ax, ax
pop eax
jne 0x449ea8
mov ecx, dword [ebp - 0x44]
test ecx, ecx
mov dword [ebp + 8], ebx
mov eax, 0x4c4cfc
lea edx, [ebp + 8]
cmovne eax, ecx
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x28], eax
call fcn.004488e4
push 0x20
call fcn.004a43b6
pop ecx
mov dword [ebp - 0x2c], eax
mov ecx, eax
push dword [ebp + 8]
call fcn.0044bc20
mov esi, eax
lea ecx, [edi + 0x14]
push esi
call fcn.0044618f
lea ecx, [edi + 0x3c]
push esi
call fcn.0044bcaa
or dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x44]
test eax, eax
je 0x44a32d
push eax
jmp 0x449cd7
cmp dx, cx
push 0x3e
pop ecx
cmove eax, ecx
movzx eax, ax
push 0x20
mov dword [ebp - 0x28], eax
call fcn.004a43b6
pop ecx
push 0xfffffffffffffffd
mov ecx, eax
mov dword [ebp + 8], eax
call fcn.0044bc20
mov esi, eax
lea ecx, [edi + 0x14]
push esi
mov dword [ebp - 0x14], esi
call fcn.0044618f
mov ecx, edi
call fcn.00445a8c
lea edx, [esi + 0xc]
mov dword [ebp - 0x4c], ebx
mov dword [ebp - 0x24], edx
mov dword [ebp - 0x48], ebx
mov dword [ebp - 0x50], vtable.CBufferT_char_.0
mov dword [ebp - 0x40], ebx
mov dword [ebp - 0x44], ebx
mov dword [ebp - 4], 4
movzx eax, word [edi + 0xa8]
mov ecx, eax
test ax, ax
je 0x44a003
lea esi, [edi + 0xa8]
movzx eax, cx
cmp ax, word [ebp - 0x28]
je 0x449ffd
push ecx
mov dword [ebp + 8], eax
mov ecx, edx
push 1
lea eax, [ebp + 8]
push eax
call fcn.0044bf67
movzx ecx, word [esi]
movzx eax, cl
cmp ax, cx
jne 0x449fd5
mov al, byte [esi]
jmp 0x449fd7
mov al, bl
push ecx
mov byte [ebp + 8], al
lea ecx, [ebp - 0x50]
push 1
lea eax, [ebp + 8]
push eax
call fcn.0044b7b6
mov ecx, edi
call fcn.00445a8c
movzx eax, word [esi]
mov edx, dword [ebp - 0x24]
mov ecx, eax
test ax, ax
jne 0x449fac
mov ebx, dword [ebp - 0x44]
mov esi, dword [ebp - 0x14]
mov ecx, edi
call fcn.00445a8c
test ebx, ebx
lea edx, [ebp - 0x28]
mov eax, 0x4c4cfc
lea ecx, [ebp + 8]
cmovne eax, ebx
mov dword [ebp + 8], eax
call fcn.004488e4
test eax, eax
je 0x449cc1
mov eax, dword [ebp + 8]
cmp byte [eax], 0
jne 0x449cc1
mov eax, dword [ebp - 0x28]
lea ecx, [esi + 0xc]
mov dword [esi + 8], eax
call fcn.0044bff5
jmp 0x449cc1
mov eax, dword [ebp - 0x18]
movzx eax, ax
cmp edx, 0x50
jne 0x44a066
mov ecx, edi
call fcn.00445a8c
movzx eax, word [esi]
push 0x3e
pop ecx
jmp 0x44a066
mov eax, dword [ebp - 0x28]
movzx edx, ax
cmp edx, 0x3c
je 0x44a07a
push 0x27
pop eax
cmp dx, ax
cmove ecx, eax
mov dword [ebp - 0x24], ecx
mov ecx, edi
call fcn.00445a8c
mov eax, dword [edi + 0xc]
mov dword [ebp - 0x28], eax
inc eax
push 0x1c
mov dword [edi + 0xc], eax
call fcn.004a43b6
pop ecx
mov dword [ebp - 0x2c], eax
mov ecx, dword [ebp + 8]
mov ecx, dword [ecx]
and ecx, 0x10
push ecx
mov ecx, eax
call fcn.00447c84
lea esi, [edi + 0x14]
mov dword [ebp - 0x14], eax
push eax
mov ecx, esi
call fcn.0044618f
push 0x20
call fcn.004a43b6
pop ecx
mov dword [ebp - 0x2c], eax
mov ecx, dword [ebp + 8]
mov ecx, dword [ecx]
shr ecx, 4
and ecx, 1
push ecx
push 0xffffffffffffffff
mov ecx, eax
call fcn.0044bc43
push eax
mov ecx, esi
mov dword [ebp - 0x18], eax
call fcn.0044618f
push 0x20
call fcn.004a43b6
pop ecx
mov dword [ebp - 0x2c], eax
mov ecx, dword [ebp + 8]
mov edx, dword [ecx]
mov ecx, eax
shr edx, 4
not edx
and edx, 1
push edx
push 0xffffffffffffffff
call fcn.0044bc43
push eax
mov ecx, esi
mov dword [ebp - 0x1c], eax
call fcn.0044618f
mov edx, dword [ebp - 0x18]
add edx, 0xc
mov dword [ebp - 0x4c], ebx
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x48], ebx
mov dword [ebp - 0x50], vtable.CBufferT_char_.0
mov dword [ebp - 0x40], ebx
mov dword [ebp - 0x44], ebx
lea esi, [edi + 0xa8]
mov dword [ebp - 4], 2
movzx eax, word [esi]
mov ecx, eax
test ax, ax
je 0x44a193
movzx eax, cx
cmp ax, word [ebp - 0x24]
je 0x44a190
push ecx
mov dword [ebp - 0x2c], eax
mov ecx, edx
push 1
lea eax, [ebp - 0x2c]
push eax
call fcn.0044bf67
movzx ecx, word [esi]
movzx eax, cl
cmp ax, cx
jne 0x44a168
mov al, byte [esi]
jmp 0x44a16a
mov al, bl
push ecx
mov byte [ebp - 0x10], al
lea ecx, [ebp - 0x50]
push 1
lea eax, [ebp - 0x10]
push eax
call fcn.0044b7b6
mov ecx, edi
call fcn.00445a8c
movzx eax, word [esi]
mov edx, dword [ebp - 0x20]
mov ecx, eax
test ax, ax
jne 0x44a13f
mov ebx, dword [ebp - 0x44]
mov ecx, edi
call fcn.00445a8c
test ebx, ebx
lea edx, [ebp - 0x2c]
mov eax, 0x4c4cfc
lea ecx, [ebp - 0x24]
cmovne eax, ebx
mov dword [ebp - 0x24], eax
call fcn.004488e4
test eax, eax
je 0x44a1d5
mov eax, dword [ebp - 0x24]
cmp byte [eax], 0
jne 0x44a1d5
mov edx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x20]
mov dword [edx + 4], eax
mov edx, dword [ebp - 0x1c]
mov dword [edx + 4], eax
call fcn.0044bff5
mov esi, dword [ebp - 0x14]
push dword [ebp - 0x18]
add esi, 4
mov ecx, esi
call fcn.0044618f
mov eax, dword [ebp + 8]
mov ecx, edi
push dword [eax]
call fcn.00445acc
push eax
mov ecx, esi
call fcn.0044618f
push dword [ebp - 0x1c]
mov ecx, esi
call fcn.0044618f
push ecx
push dword [ebp - 0x28]
lea ecx, [edi + 0x50]
call fcn.0044bba1
mov eax, dword [edi + 0x5c]
mov ecx, dword [ebp - 0x28]
mov esi, dword [ebp - 0x14]
mov dword [eax + ecx*4], esi
jmp 0x449cca
mov ecx, edi
call fcn.00445a8c
push 8
call fcn.004a43b6
mov esi, eax
pop ecx
mov dword [ebp - 0x2c], esi
mov dword [ebp - 4], 3
mov ecx, edi
mov eax, dword [ebp + 8]
push dword [eax]
call fcn.00445acc
mov dword [esi], vtable.CIndependentElxT_0_.0
mov dword [esi + 4], eax
or dword [ebp - 4], 0xffffffff
lea ecx, [edi + 0x14]
push esi
call fcn.0044618f
jmp 0x44a32d
push 0x1c
call fcn.004a43b6
mov dword [ebp - 0x2c], eax
mov ebx, dword [ebp + 8]
pop ecx
mov ecx, dword [ebx]
and ecx, 0x10
push ecx
mov ecx, eax
call fcn.00447c84
mov esi, dword [ebp - 0x14]
mov edi, eax
push edi
mov dword [ebp - 0x2c], edi
lea ecx, [esi + 0x14]
call fcn.0044618f
inc dword [esi + 8]
add edi, 4
mov esi, dword [esi + 8]
push 0x20
mov dword [ebp + 8], esi
call fcn.004a43b6
pop ecx
mov dword [ebp - 0x28], eax
mov ecx, dword [ebx]
shr ecx, 4
and ecx, 1
push ecx
push esi
mov ecx, eax
call fcn.0044bc43
mov ecx, dword [ebp - 0x14]
mov esi, eax
push esi
lea ecx, [ecx + 0x14]
call fcn.0044618f
push esi
mov ecx, edi
call fcn.0044618f
push dword [ebx]
mov ecx, dword [ebp - 0x14]
call fcn.00445acc
push eax
mov ecx, edi
call fcn.0044618f
push 0x20
call fcn.004a43b6
mov dword [ebp - 0x28], eax
mov edx, dword [ebx]
mov ebx, dword [ebp + 8]
shr edx, 4
pop ecx
not edx
mov ecx, eax
and edx, 1
push edx
push ebx
call fcn.0044bc43
mov ecx, dword [ebp - 0x14]
mov esi, eax
push esi
lea ecx, [ecx + 0x14]
call fcn.0044618f
push esi
mov ecx, edi
call fcn.0044618f
mov edi, dword [ebp - 0x14]
push ecx
push ebx
lea ecx, [edi + 0x28]
call fcn.00445985
mov eax, dword [edi + 0x34]
mov ecx, dword [ebp - 0x2c]
mov esi, ecx
mov dword [eax + ebx*4], ecx
mov ecx, edi
call fcn.00445a8c
mov eax, esi
call fcn.004a7644
ret 4