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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
mov eax, 0x20c4
call fcn.004b4520
mov ecx, dword [ebp + 0xc]
push ebx
mov ebx, dword [0x4cbec8]
push esi
push edi
mov dword [esp + 0x24], ebx
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x44e603
sub ecx, edx
cmp ecx, 0x7d0
jbe 0x44e62c
push 1
push 0
push 0xffffffffffffffff
push 0
mov ecx, ebx
call fcn.004a2db0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8
mov eax, dword [ebp + 8]
mov byte [esp + 0x70], 0
mov cl, byte [eax]
test cl, cl
jne 0x44e676
lea eax, [esp + 0x28]
push eax
call dword [sym.imp.KERNEL32.dll_GetLocalTime]
xor esi, esi
mov dword [esp + 0x20], 0x400
xor ah, ah
mov dword [esp + 0x10], esi
xor edx, edx
mov dword [esp + 0x18], esi
mov byte [esp + 0xf], 0
mov byte [esp + 0xd], 0
mov dword [esp + 0x14], edx
mov dword [esp + 0x1c], edx
mov byte [esp + 0xe], ah
jmp 0x44e72b
cmp cl, 0x20
je 0x44e680
cmp cl, 9
jne 0x44e686
mov cl, byte [eax + 1]
inc eax
jmp 0x44e676
push 0xff
push eax
lea eax, [esp + 0x78]
push eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncpy]
mov dl, byte [esp + 0x7c]
lea esi, [esp + 0x7c]
mov al, dl
mov byte [esp + 0x17b], 0
sub al, 0x30
add esp, 0xc
cmp al, 9
ja 0x44e79d
test dl, dl
je 0x44e6df
nop word [eax + eax]
mov ecx, 0x4bb7f4
mov al, 0x20
cmp dl, al
je 0x44e780
mov al, byte [ecx + 1]
inc ecx
test al, al
jne 0x44e6c7
mov dl, byte [esi + 1]
inc esi
test dl, dl
jne 0x44e6c0
xor esi, esi
push 0
lea edx, [esp + 0x2c]
lea ecx, [esp + 0x74]
call fcn.0049e200
xor edx, edx
mov dword [esp + 0x24], 0x400
add esp, 4
mov dword [esp + 0x10], 0
xor ah, ah
mov dword [esp + 0x18], 0
mov byte [esp + 0xf], 0
mov byte [esp + 0xd], 0
mov dword [esp + 0x14], edx
mov dword [esp + 0x1c], edx
mov byte [esp + 0xe], dl
test esi, esi
jne 0x44e7a8
xor esi, esi
mov ecx, dword [ebp + 0xc]
mov edi, dword [sym.imp.KERNEL32.dll_GetTimeFormatA]
mov ebx, dword [sym.imp.KERNEL32.dll_GetDateFormatA]
mov al, byte [ecx]
test al, al
jne 0x44ea28
xor edx, edx
mov byte [esp + 0xe], 1
xor ecx, ecx
test ah, ah
mov eax, esi
setne dl
or eax, 2
inc edx
cmp byte [esp + 0xf], cl
mov dword [esp + 0x14], edx
cmovne eax, esi
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x18]
or eax, 2
cmp byte [esp + 0xd], cl
cmovne eax, dword [esp + 0x18]
mov dword [esp + 0x18], eax
jmp 0x44ee27
test esi, esi
je 0x44e6e1
mov byte [esi], 0
mov al, byte [esi + 1]
inc esi
cmp al, 0x20
je 0x44e78b
cmp al, 9
jne 0x44e6e1
jmp 0x44e78b
lea eax, [esp + 0x28]
push eax
call dword [sym.imp.KERNEL32.dll_GetLocalTime]
xor edx, edx
mov dword [esp + 0x20], 0x400
xor ah, ah
mov dword [esp + 0x10], 0
mov dword [esp + 0x18], 0
mov byte [esp + 0xf], 0
mov byte [esp + 0xd], 0
mov dword [esp + 0x14], edx
mov dword [esp + 0x1c], edx
mov byte [esp + 0xe], dl
cmp byte [esi], dl
je 0x44e729
mov dword [esp + 0x20], 0x400
mov dword [esp + 0x10], edx
mov dword [esp + 0x18], edx
mov byte [esp + 0xf], dl
mov byte [esp + 0xd], dl
mov byte [esp + 0xc], dl
mov dword [esp + 0x14], edx
mov dword [esp + 0x1c], edx
mov byte [esp + 0xe], dl
nop word [eax + eax]
mov dword [esp + 0x38], esi
mov edi, esi
test esi, esi
je 0x44e83b
mov dl, byte [esi]
test dl, dl
je 0x44e83b
mov ecx, 0x4bb7f4
mov al, 0x20
cmp dl, al
je 0x44e84c
mov al, byte [ecx + 1]
inc ecx
test al, al
jne 0x44e827
mov dl, byte [edi + 1]
inc edi
test dl, dl
jne 0x44e820
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x44e840
sub ecx, edx
lea edi, [ecx + esi]
mov eax, dword [esp + 0x38]
inc esi
mov bl, byte [edi]
mov byte [edi], 0
movsx eax, byte [eax]
push eax
call dword [sym.imp.api_ms_win_crt_multibyte_l1_1_0.dll__mbctoupper]
add eax, 0xffffffbc
add esp, 4
cmp eax, 0x10
ja case.0x44e876.69
movzx eax, byte [eax + 0x44efe4]
jmp dword [eax*4 + 0x44efd0]
mov byte [esp + 0xf], 1
mov ecx, esi
mov al, byte [ecx]
cmp al, 0x20
je 0x44e88e
cmp al, 9
jne 0x44e891
inc ecx
jmp 0x44e884
test al, al
je 0x44e8e0
cmp al, 0x2d
je 0x44e89d
cmp al, 0x2b
jne 0x44e8a4
lea eax, [ecx + 1]
mov ecx, eax
mov al, byte [eax]
cmp al, 0x30
jne 0x44e8e0
mov al, byte [ecx + 1]
cmp al, 0x78
je 0x44e8b3
cmp al, 0x58
jne 0x44e8e0
movsx eax, byte [ecx + 2]
push eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isxdigit]
add esp, 4
test eax, eax
je 0x44e8e0
push 0x10
push 0
push esi
call dword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll__strtoi64]
add esp, 0xc
mov dword [esp + 0x3c], edx
or dword [esp + 0x10], eax
jmp case.0x44e876.69
push esi
call dword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll__atoi64]
add esp, 4
mov dword [esp + 0x3c], edx
or dword [esp + 0x10], eax
jmp case.0x44e876.69
mov byte [esp + 0xd], 1
mov ecx, esi
nop
mov al, byte [ecx]
cmp al, 0x20
je 0x44e90a
cmp al, 9
jne 0x44e90d
inc ecx
jmp 0x44e900
test al, al
je 0x44e95c
cmp al, 0x2d
je 0x44e919
cmp al, 0x2b
jne 0x44e920
lea eax, [ecx + 1]
mov ecx, eax
mov al, byte [eax]
cmp al, 0x30
jne 0x44e95c
mov al, byte [ecx + 1]
cmp al, 0x78
je 0x44e92f
cmp al, 0x58
jne 0x44e95c
movsx eax, byte [ecx + 2]
push eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isxdigit]
add esp, 4
test eax, eax
je 0x44e95c
push 0x10
push 0
push esi
call dword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll__strtoi64]
add esp, 0xc
mov dword [esp + 0x3c], edx
or dword [esp + 0x18], eax
jmp case.0x44e876.69
push esi
call dword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll__atoi64]
add esp, 4
mov dword [esp + 0x3c], edx
or dword [esp + 0x18], eax
jmp case.0x44e876.69
mov ah, 1
mov byte [esp + 0xc], ah
jmp 0x44ea03
push 0x4bf644
push esi
call dword [sym.imp.api_ms_win_crt_multibyte_l1_1_0.dll__mbsicmp]
add esp, 8
test eax, eax
jne 0x44e99b
mov dword [esp + 0x20], 0x800
jmp case.0x44e876.69
mov ecx, esi
nop dword [eax]
mov al, byte [ecx]
cmp al, 0x20
je 0x44e9aa
cmp al, 9
jne 0x44e9ad
inc ecx
jmp 0x44e9a0
test al, al
je 0x44e9f1
cmp al, 0x2d
je 0x44e9b9
cmp al, 0x2b
jne 0x44e9c0
lea eax, [ecx + 1]
mov ecx, eax
mov al, byte [eax]
cmp al, 0x30
jne 0x44e9f1
mov al, byte [ecx + 1]
cmp al, 0x78
je 0x44e9cf
cmp al, 0x58
jne 0x44e9f1
movsx eax, byte [ecx + 2]
push eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isxdigit]
add esp, 4
test eax, eax
je 0x44e9f1
push 0x10
push 0
push esi
call dword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll__strtoi64]
add esp, 0xc
jmp 0x44e9fb
push esi
call dword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll__atoi64]
add esp, 4
mov dword [esp + 0x20], eax
mov ah, byte [esp + 0xc]
mov byte [edi], bl
mov esi, edi
cmp bl, 0x20
je 0x44ea11
cmp bl, 9
jne 0x44ea17
mov bl, byte [esi + 1]
inc esi
jmp 0x44ea07
test bl, bl
jne 0x44e810
mov esi, dword [esp + 0x10]
jmp 0x44e72b
mov esi, ecx
nop word [eax + eax]
cmp al, 0x20
je 0x44ea38
cmp al, 9
jne 0x44ea3e
mov al, byte [esi + 1]
inc esi
jmp 0x44ea30
push str.YWeek
push esi
call dword [sym.imp.api_ms_win_crt_multibyte_l1_1_0.dll__mbsicmp]
add esp, 8
test eax, eax
jne 0x44eafb
movzx ecx, word [esp + 0x28]
movzx esi, word [esp + 0x2c]
test cl, 3
jne 0x44eaaf
xor edx, edx
mov eax, ecx
mov edi, 0x64
div edi
test edx, edx
jne 0x44ea80
mov eax, ecx
mov edi, 0x190
div edi
test edx, edx
jne 0x44eaaf
movaps xmm0, xmmword [0x4c2400]
movzx eax, word [esp + 0x2a]
movups xmmword [esp + 0x40], xmm0
movaps xmm0, xmmword [0x4c2420]
movups xmmword [esp + 0x50], xmm0
movaps xmm0, xmmword [0x4c2440]
movups xmmword [esp + 0x60], xmm0
mov eax, dword [esp + eax*4 + 0x3c]
jmp 0x44eadc
movaps xmm0, xmmword [0x4c23f0]
movzx eax, word [esp + 0x2a]
movups xmmword [esp + 0x40], xmm0
movaps xmm0, xmmword [0x4c2410]
movups xmmword [esp + 0x50], xmm0
movaps xmm0, xmmword [0x4c2430]
movups xmmword [esp + 0x60], xmm0
mov eax, dword [esp + eax*4 + 0x3c]
movzx edx, word [esp + 0x2e]
add eax, edx
mov edx, ecx
push esi
push eax
lea ecx, [esp + 0x178]
call fcn.0049e020
add esp, 8
jmp 0x44efaf
push str.YDay
push esi
call dword [sym.imp.api_ms_win_crt_multibyte_l1_1_0.dll__mbsicmp]
add esp, 8
test eax, eax
je 0x44ee8d
push str.YDay0
push esi
call dword [sym.imp.api_ms_win_crt_multibyte_l1_1_0.dll__mbsicmp]
add esp, 8
test eax, eax
je 0x44ee8d
push str.WDay
push esi
call dword [sym.imp.api_ms_win_crt_multibyte_l1_1_0.dll__mbsicmp]
add esp, 8
test eax, eax
jne 0x44eb7a
mov ebx, dword [esp + 0x24]
movzx esi, word [esp + 0x2c]
inc esi
cmp byte [ebx + 0x17], al
jne 0x44eb4e
mov ebx, dword [ebx + 0xc]
mov al, byte [ebx + 0x15]
test al, 2
je 0x44eb65
and al, 0x3d
mov byte [ebx + 0x15], al
mov eax, dword [ebx]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
mov al, byte [ebx + 0x15]
and al, 0x9b
mov dword [ebx], esi
or al, 0x18
mov dword [ebx + 4], 0
mov byte [ebx + 0x15], al
jmp 0x44ef60
push str.ShortDate
push esi
call dword [sym.imp.api_ms_win_crt_multibyte_l1_1_0.dll__mbsicmp]
add esp, 8
test eax, eax
jne 0x44ebaa
mov eax, dword [esp + 0x10]
xor ecx, ecx
and eax, 0xfffffff5
mov dword [esp + 0x14], 2
or eax, 1
mov dword [esp + 0x10], eax
jmp 0x44ee3e
push str.LongDate
push esi
call dword [sym.imp.api_ms_win_crt_multibyte_l1_1_0.dll__mbsicmp]
add esp, 8
test eax, eax
jne 0x44ebda
mov eax, dword [esp + 0x10]
xor ecx, ecx
and eax, 0xfffffff6
mov dword [esp + 0x14], 2
or eax, 2
mov dword [esp + 0x10], eax
jmp 0x44ee3e
push str.YearMonth
push esi
call dword [sym.imp.api_ms_win_crt_multibyte_l1_1_0.dll__mbsicmp]
add esp, 8
test eax, eax
jne 0x44ec0a
mov eax, dword [esp + 0x10]
xor ecx, ecx
and eax, 0xfffffffc
mov dword [esp + 0x14], 2
or eax, 8
mov dword [esp + 0x10], eax
jmp 0x44ee3e
push str.Time
push esi
call dword [sym.imp.api_ms_win_crt_multibyte_l1_1_0.dll__mbsicmp]
add esp, 8
test eax, eax
jne 0x44ecd0
mov eax, dword [esp + 0x18]
xor ecx, ecx
or eax, 2
mov dword [esp + 0x14], 1
cmp byte [esp + 0xd], cl
cmovne eax, dword [esp + 0x18]
mov dword [esp + 0x18], eax
push 0xfaa
lea edx, [esp + 0x174]
push edx
push ecx
lea ecx, [esp + 0x34]
push ecx
push eax
push dword [esp + 0x34]
call edi
neg eax
sbb al, al
and byte [esp + 0x170], al
cmp dword [esp + 0x1c], 0
mov dl, byte [esp + 0xe]
jne 0x44ec77
test dl, dl
je 0x44efaf
lea esi, [esp + 0x170]
lea ecx, [esi + 1]
mov al, byte [esi]
inc esi
test al, al
jne 0x44ec81
sub esi, ecx
lea eax, [esp + 0x170]
add eax, esi
test dl, dl
je 0x44eca4
mov byte [eax], 0x20
inc eax
mov dword [esp + 0x1c], 0
inc esi
mov ecx, 0xfaa
sub ecx, esi
cmp dword [esp + 0x14], 2
push ecx
push eax
push dword [esp + 0x24]
lea eax, [esp + 0x34]
push eax
jne 0x44ee6f
push dword [esp + 0x28]
push dword [esp + 0x34]
call edi
jmp 0x44ee79
mov eax, dword [ebp + 0xc]
lea esi, [esp + 0x1120]
xor bh, bh
xor bl, bl
mov al, byte [eax]
test al, al
je 0x44ee0f
mov edi, dword [sym.imp.USER32.dll_IsCharAlphaNumericA]
mov byte [esp + 0x38], al
cmp al, 0x27
jne 0x44ed4d
test bl, bl
je 0x44ed03
xor bl, bl
mov bh, 1
jmp 0x44edec
test bh, bh
je 0x44ed3f
mov eax, dword [ebp + 0xc]
mov al, byte [eax + 1]
test al, al
je 0x44ed2d
push eax
call edi
test eax, eax
mov eax, dword [ebp + 0xc]
jne 0x44ed30
cmp byte [eax + 1], 0x27
je 0x44ed30
test bh, bh
mov bl, 1
sete bh
jmp 0x44edec
mov eax, dword [ebp + 0xc]
mov al, byte [eax]
mov byte [esi], al
inc esi
test bh, bh
sete bh
jmp 0x44edec
mov byte [esi], 0x27
inc esi
test bh, bh
sete bh
jmp 0x44edec
test bh, bh
jne 0x44ede9
push dword [esp + 0x38]
call edi
test eax, eax
je 0x44edda
test bl, bl
je 0x44ed69
mov byte [esi], 0x27
inc esi
xor bl, bl
mov eax, dword [ebp + 0xc]
movsx eax, byte [eax]
push eax
push str.dMyg
call dword [sym.imp.api_ms_win_crt_multibyte_l1_1_0.dll__mbschr]
add esp, 8
test eax, eax
je 0x44ed99
mov ecx, dword [esp + 0x14]
test ecx, ecx
jne 0x44ed94
mov dword [esp + 0x14], 2
jmp 0x44ede4
cmp ecx, 1
jmp 0x44edc7
mov eax, dword [ebp + 0xc]
movsx eax, byte [eax]
push eax
push str.hHmst
call dword [sym.imp.api_ms_win_crt_multibyte_l1_1_0.dll__mbschr]
add esp, 8
test eax, eax
je 0x44ede4
mov ecx, dword [esp + 0x14]
test ecx, ecx
jne 0x44edc4
mov dword [esp + 0x14], 1
jmp 0x44ede4
cmp ecx, 2
jne 0x44ede4
cmp dword [esp + 0x1c], 0
jne 0x44ede4
mov byte [esi], 0
inc esi
mov dword [esp + 0x1c], esi
jmp 0x44ede4
test bl, bl
jne 0x44ede4
mov byte [esi], 0x27
mov bl, 1
inc esi
mov eax, dword [ebp + 0xc]
mov al, byte [eax]
mov byte [esi], al
inc esi
mov eax, dword [ebp + 0xc]
inc eax
mov dword [ebp + 0xc], eax
mov al, byte [eax]
mov byte [esp + 0x38], al
test al, al
jne 0x44ecf2
mov edi, dword [sym.imp.KERNEL32.dll_GetTimeFormatA]
test bl, bl
je 0x44ee0f
mov byte [esi], 0x27
inc esi
mov ebx, dword [sym.imp.KERNEL32.dll_GetDateFormatA]
lea ecx, [esp + 0x1120]
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov byte [esi], 0
test edx, edx
jne 0x44ee35
mov dword [esp + 0x14], 2
jmp 0x44ee3e
cmp edx, 2
jne 0x44ec3f
push 0xfaa
lea eax, [esp + 0x174]
push eax
push ecx
lea eax, [esp + 0x34]
push eax
push dword [esp + 0x20]
push dword [esp + 0x34]
call ebx
test eax, eax
jne 0x44ec64
mov byte [esp + 0x170], al
jmp 0x44ec64
push dword [esp + 0x20]
push dword [esp + 0x34]
call ebx
test eax, eax
jne 0x44efaf
mov byte [esp + esi + 0x170], al
jmp 0x44efaf
movzx ecx, word [esp + 0x28]
test cl, 3
jne 0x44eee2
xor edx, edx
mov eax, ecx
mov edi, 0x64
div edi
test edx, edx
jne 0x44eeb3
mov eax, ecx
mov ecx, 0x190
div ecx
test edx, edx
jne 0x44eee2
movaps xmm0, xmmword [0x4c2400]
movzx eax, word [esp + 0x2a]
movups xmmword [esp + 0x40], xmm0
movaps xmm0, xmmword [0x4c2420]
movups xmmword [esp + 0x50], xmm0
movaps xmm0, xmmword [0x4c2440]
movups xmmword [esp + 0x60], xmm0
mov eax, dword [esp + eax*4 + 0x3c]
jmp 0x44ef0f
movaps xmm0, xmmword [0x4c23f0]
movzx eax, word [esp + 0x2a]
movups xmmword [esp + 0x40], xmm0
movaps xmm0, xmmword [0x4c2410]
movups xmmword [esp + 0x50], xmm0
movaps xmm0, xmmword [0x4c2430]
movups xmmword [esp + 0x60], xmm0
mov eax, dword [esp + eax*4 + 0x3c]
movzx ecx, word [esp + 0x2e]
push str.YDay
push esi
lea edi, [eax + ecx]
call dword [sym.imp.api_ms_win_crt_multibyte_l1_1_0.dll__mbsicmp]
add esp, 8
test eax, eax
jne 0x44ef99
mov ebx, dword [esp + 0x24]
cmp byte [ebx + 0x17], al
jne 0x44ef36
mov ebx, dword [ebx + 0xc]
mov cl, byte [ebx + 0x15]
test cl, 2
je 0x44ef4f
and cl, 0x3d
mov byte [ebx + 0x15], cl
mov ecx, dword [ebx]
push ecx
mov edx, dword [ecx]
call dword [edx + 8]
mov cl, byte [ebx + 0x15]
mov eax, edi
and cl, 0x9b
cdq
or cl, 0x18
mov dword [ebx], eax
mov dword [ebx + 4], edx
mov byte [ebx + 0x15], cl
jge 0x44ef7b
mov ecx, ebx
call fcn.004013b0
and byte [ebx + 0x15], 0x8f
mov eax, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8
cmp dword [0x4ca760], 0
je 0x44ef8b
mov ecx, ebx
call fcn.004013b0
mov eax, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8
push edi
lea eax, [esp + 0x174]
push str._03d
push eax
call fcn.004053e0
add esp, 0xc
mov ecx, dword [esp + 0x24]
lea eax, [esp + 0x170]
push 1
push 0
push 0xffffffffffffffff
push eax
call fcn.004a2db0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8