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

Disassembly:
push ebp
push edi
push esi
push ebx
sub esp, 0x10c
mov edx, dword [esp + 0x120]
lea edi, [esp + 0x50]
lea esi, [esp + 0x124]
mov eax, 8
mov ecx, eax
rep movsd dword es:[edi], dword [esi]
mov eax, ecx
lea edi, [esp + 0xe4]
mov dword [esp + 0x20], edi
mov cl, 3
rep stosd dword es:[edi], eax
cmp edx, 0xffffffff
je 0x4ec4e0
mov dword [esp + 0xe4], edx
mov ebx, 2
mov dword [esp + 0x40], 0
mov dword [esp + 0x24], 1
mov eax, dword [0x91d1a8]
cmp eax, 0xffffffff
je 0x4eb8c0
mov dword [esp], eax
call fcn.00613f08
push edi
test eax, eax
je 0x4eb8c0
mov eax, dword [0x91d1a8]
cmp eax, 0xffffffff
je 0x4ec530
mov dword [esp], eax
call fcn.00613f08
push esi
cmp byte [eax + 0x18], 0
je 0x4eb8c0
mov eax, dword [0x91d1a8]
cmp eax, 0xffffffff
je 0x4eca47
mov dword [esp], eax
call fcn.00613f08
push ecx
mov eax, dword [eax + 0xc]
mov ebp, dword [esp + 0x24]
mov dword [esp + ebp*4 + 0xe4], eax
mov dword [esp + 0x44], ebp
mov dword [esp + 0x24], ebx
jmp 0x4eb8c8
mov dword [esp + 0x44], 0xffffffff
mov dword [esp + 0x74], 0
mov eax, dword [esp + 0x58]
and eax, dword [esp + 0x5c]
inc eax
je 0x4ebb1d
cmp byte [esp + 0x60], 0
jne 0x4ebf30
mov dword [esp + 4], 0
lea eax, [esp + 0xb4]
mov dword [esp], eax
call fcn.00621e80
mov eax, dword [esp + 0xb4]
mov dword [esp + 0x78], eax
mov ecx, dword [esp + 0xb8]
mov dword [esp + 0x48], ecx
lea eax, [esp + 0x78]
mov dword [esp], eax
call fcn.0062b800
mov esi, eax
test eax, eax
je 0x4ecb7f
movzx ebx, word [eax + 0xc]
mov dword [esp + 0x28], ebx
mov word [esp + 0x38], bx
test ebx, ebx
je 0x4ecc7c
cmp word [esp + 0x38], 0x1f
ja 0x4ecc81
mov ebp, dword [eax + 0x10]
lea ebx, [ebp + 1]
mov eax, ebx
and eax, 0xffff
test eax, eax
je 0x4ecc86
cmp bx, 0xc
ja 0x4ecc8b
mov edi, dword [esi + 0x14]
lea ecx, [edi + 0x76c]
mov word [esp + 0x30], cx
mov edx, ecx
and edx, 0xffff
cmp edx, 0x577
jle 0x4eccc9
cmp word [esp + 0x30], 0x2710
ja 0x4eccce
mov ecx, 0xe
sub ecx, eax
mov edx, 0x2aaaaaab
mov eax, ecx
imul edx
sar edx, 1
sar ecx, 0x1f
sub edx, ecx
lea ecx, [edi + 0x1a2c]
sub ecx, edx
lea edx, [edx + edx*2]
lea ebp, [ebp + edx*4 - 2]
and ebp, 0xffff
lea eax, [ebp + ebp*8]
lea eax, [ebp + eax*2]
lea eax, [ebp + eax*8 + 2]
mov edx, 0x66666667
imul edx
shr edx, 1
add edx, dword [esp + 0x28]
mov eax, ecx
and eax, 0xffff
lea ebp, [eax + eax*8]
lea eax, [eax + ebp*8]
lea ebp, [eax + eax*4]
add edx, ebp
mov eax, ecx
shr ax, 2
and eax, 0xffff
lea ebp, [edx + eax]
lea edx, [eax + eax*4]
lea edx, [eax + edx*8]
shl edx, 5
sub edx, eax
shl edx, 2
sub edx, eax
shr edx, 0x11
sub ebp, edx
shr cx, 4
and ecx, 0xffff
lea eax, [ecx + ecx*4]
lea eax, [ecx + eax*8]
shl eax, 5
sub eax, ecx
add eax, eax
shr eax, 0x10
lea edi, [ebp + eax - 0x7d2d]
cmp bx, 0xb
jbe 0x4ec2b0
mov ecx, dword [esp + 0x48]
mov dword [esp + 0x28], ecx
mov dword [esp + 0x2c], 0
mov ebp, dword [esi]
mov ebx, dword [esi + 4]
mov eax, dword [esi + 8]
test eax, eax
js 0x4ec2c0
test ebx, ebx
js 0x4ec2c0
test ebp, ebp
js 0x4ec2c0
mov ecx, 0xe10
imul ecx
mov dword [esp + 0x38], ebx
mov ecx, ebx
sar ecx, 0x1f
mov dword [esp + 0x3c], ecx
mov ebx, dword [esp + 0x38]
mov esi, dword [esp + 0x3c]
shld esi, ebx, 2
add ebx, ebx
add ebx, ebx
mov dword [esp + 0x30], ebx
mov dword [esp + 0x34], esi
mov ecx, dword [esp + 0x38]
mov ebx, dword [esp + 0x3c]
shld ebx, ecx, 6
shl ecx, 6
sub ecx, dword [esp + 0x30]
sbb ebx, dword [esp + 0x34]
add eax, ecx
adc edx, ebx
mov ebx, ebp
sar ebx, 0x1f
add eax, ebp
adc edx, ebx
imul ebx, edx, 0xf4240
mov ecx, 0xf4240
mul ecx
add edx, ebx
mov ecx, dword [esp + 0x28]
mov ebx, dword [esp + 0x2c]
add ecx, eax
adc ebx, edx
test edi, edi
jne 0x4ec330
xor eax, eax
mov edx, 0x80000000
mov dword [esp + 0x98], eax
mov dword [esp + 0x9c], edx
cmp dword [esp + 0x6c], edx
jl 0x4ebb10
jg 0x4ec480
cmp dword [esp + 0x68], eax
ja 0x4ec480
nop
xor ebx, ebx
cmp byte [esp + 0x60], 0
je 0x4ec270
mov dword [esp + 0x28], 0xffffffff
xor esi, esi
xor ebx, ebx
lea esi, [esi]
cmp dword [esp + 0x28], 0xffffffff
je 0x4ebbd0
or eax, 0xffffffff
cmp dword [esp + 0x24], 0
je 0x4ebc18
lea esi, [esi]
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0
lea eax, [esp + 0xe4]
mov dword [esp + 4], eax
mov ebp, dword [esp + 0x24]
mov dword [esp], ebp
call dword [0x93ca50]
sub esp, 0x10
cmp ebp, eax
jbe 0x4ebb95
cmp dword [esp + 0x40], eax
je 0x4eca40
cmp dword [esp + 0x44], eax
je 0x4ecb24
cmp dword [esp + 0x28], eax
je 0x4ebbaa
cmp byte [esp + 0x60], 0
je 0x4ebba6
add dword [esp + 0x58], 2
adc dword [esp + 0x5c], 0xffffffff
test bl, bl
jne 0x4ebb30
xor ebx, ebx
mov eax, dword [esp + 0x74]
lea edx, [eax - 1]
cmp edx, 0xfffffffd
ja 0x4ebbc2
mov dword [esp], eax
call dword [0x93c894]
push ecx
mov al, bl
add esp, 0x10c
pop ebx
pop esi
pop edi
pop ebp
ret
mov eax, dword [esp + 0x58]
and eax, dword [esp + 0x5c]
inc eax
je 0x4ec230
cmp byte [esp + 0x60], 0
je 0x4ebc30
call dword [0x93c964]
mov esi, eax
sub esi, dword [esp + 0x50]
mov ecx, esi
xor ebx, ebx
mov eax, dword [esp + 0x58]
mov edx, dword [esp + 0x5c]
cmp ebx, edx
jbe 0x4ebf00
xor eax, eax
xor ebx, ebx
mov esi, eax
mov ecx, dword [esp + 0x24]
test ecx, ecx
jne 0x4ebb50
mov dword [esp], esi
call dword [0x93ca1c]
push edi
jmp 0x4ebb95
mov dword [esp + 4], 0
lea eax, [esp + 0xcc]
mov dword [esp], eax
call fcn.00621e80
mov eax, dword [esp + 0xcc]
mov dword [esp + 0x84], eax
mov edi, dword [esp + 0xd0]
mov dword [esp + 0x4c], edi
lea eax, [esp + 0x84]
mov dword [esp], eax
call fcn.0062b800
mov edi, eax
test eax, eax
je 0x4ecc43
movzx ebp, word [eax + 0xc]
mov dword [esp + 0x38], ebp
mov word [esp + 0x48], bp
test ebp, ebp
je 0x4ecc39
cmp word [esp + 0x48], 0x1f
ja 0x4ecca9
mov ebp, dword [eax + 0x10]
lea ebx, [ebp + 1]
mov eax, ebx
and eax, 0xffff
test eax, eax
je 0x4ecca4
cmp bx, 0xc
ja 0x4ecc9f
mov ecx, dword [edi + 0x14]
lea esi, [ecx + 0x76c]
mov edx, esi
and edx, 0xffff
cmp edx, 0x577
jle 0x4ecc9a
cmp si, 0x2710
ja 0x4ecc3e
mov dword [esp + 0x30], 0xe
sub dword [esp + 0x30], eax
mov edx, 0x2aaaaaab
mov eax, dword [esp + 0x30]
imul edx
sar edx, 1
mov eax, dword [esp + 0x30]
sar eax, 0x1f
sub edx, eax
add ecx, 0x1a2c
sub ecx, edx
lea edx, [edx + edx*2]
lea ebp, [ebp + edx*4 - 2]
and ebp, 0xffff
lea eax, [ebp + ebp*8]
lea eax, [ebp + eax*2]
lea eax, [ebp + eax*8 + 2]
mov edx, 0x66666667
imul edx
shr edx, 1
add edx, dword [esp + 0x38]
mov eax, ecx
and eax, 0xffff
lea ebp, [eax + eax*8]
lea eax, [eax + ebp*8]
lea ebp, [eax + eax*4]
add ebp, edx
mov eax, ecx
shr ax, 2
and eax, 0xffff
add ebp, eax
lea edx, [eax + eax*4]
lea edx, [eax + edx*8]
shl edx, 5
sub edx, eax
shl edx, 2
sub edx, eax
shr edx, 0x11
sub ebp, edx
shr cx, 4
and ecx, 0xffff
lea eax, [ecx + ecx*4]
lea eax, [ecx + eax*8]
shl eax, 5
sub eax, ecx
add eax, eax
shr eax, 0x10
lea ebp, [ebp + eax - 0x7d2d]
cmp bx, 0xb
jbe 0x4ebf20
mov ecx, dword [esp + 0x4c]
mov dword [esp + 0x30], ecx
mov dword [esp + 0x34], 0
mov ebx, dword [edi]
mov dword [esp + 0x48], ebx
mov ecx, dword [edi + 4]
mov eax, dword [edi + 8]
test eax, eax
js 0x4ec180
test ecx, ecx
js 0x4ec180
test ebx, ebx
js 0x4ec180
mov edi, 0xe10
imul edi
mov ebx, ecx
sar ebx, 0x1f
mov esi, ecx
mov edi, ebx
shld edi, esi, 2
add esi, esi
add esi, esi
shld ebx, ecx, 6
shl ecx, 6
sub ecx, esi
sbb ebx, edi
add eax, ecx
adc edx, ebx
mov ecx, dword [esp + 0x48]
mov ebx, ecx
sar ebx, 0x1f
add eax, ecx
adc edx, ebx
imul ebx, edx, 0xf4240
mov esi, 0xf4240
mul esi
add edx, ebx
mov esi, dword [esp + 0x30]
mov edi, dword [esp + 0x34]
add esi, eax
adc edi, edx
test ebp, ebp
jne 0x4ec1f6
xor esi, esi
mov edi, 0x80000000
lea esi, [esi]
lea edi, [edi]
mov eax, dword [esp + 0x68]
mov edx, dword [esp + 0x6c]
cmp edx, edi
jl 0x4ebc06
jle 0x4ec250
lea ecx, [edx - 0x80000000]
or ecx, eax
je 0x4ec9a0
mov ecx, edx
xor ecx, 0x7fffffff
mov ebx, eax
not ebx
mov ebp, ecx
or ebp, ebx
je 0x4ec9a0
mov ebp, eax
xor ebp, 0xfffffffe
or ecx, ebp
je 0x4ec460
lea ecx, [edi - 0x80000000]
or ecx, esi
je 0x4ec460
mov ecx, edi
xor ecx, 0x7fffffff
mov ebp, esi
not ebp
or ebp, ecx
je 0x4ec9b9
mov ebx, esi
xor ebx, 0xfffffffe
or ecx, ebx
je 0x4ec460
sub eax, esi
sbb edx, edi
mov dword [esp + 8], 0x3e8
mov dword [esp + 0xc], 0
mov dword [esp], eax
mov dword [esp + 4], edx
call fcn.0061c5b0
add eax, 1
adc edx, 0
mov ecx, eax
mov ebx, edx
mov esi, 1
cmp ebx, 0
ja 0x4ebee0
cmp ecx, 0xfffffffe
jbe 0x4ebf19
nop
mov ebx, esi
test bl, bl
je 0x4ebc0a
mov eax, 0xfffffffe
jmp 0x4ebc0a
jae 0x4ec240
sub eax, ecx
sbb edx, ebx
mov esi, 1
cmp edx, 0
ja 0x4ebee0
cmp eax, 0xfffffffe
ja 0x4ebee0
xor esi, esi
jmp 0x4ebee0
and ebx, 0xffff
jmp dword [ebx*4 + 0x7a2960]
call dword [0x93c964]
mov esi, eax
sub esi, dword [esp + 0x50]
mov ecx, esi
xor ebx, ebx
mov eax, dword [esp + 0x58]
mov edx, dword [esp + 0x5c]
cmp ebx, edx
ja 0x4ebb10
jb 0x4ebf5a
cmp esi, eax
jae 0x4ebb10
sub eax, ecx
sbb edx, ebx
cmp edx, 0
ja 0x4ebf6c
cmp eax, 0xfffffffe
jbe 0x4ec43b
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], 0
call fcn.00613f10
sub esp, 0xc
mov ebx, eax
mov eax, dword [esp + 0x74]
lea edx, [eax - 1]
cmp edx, 0xfffffffd
jbe 0x4ec537
mov dword [esp + 0x74], ebx
test ebx, ebx
je 0x4ebb1d
mov dword [esp + 0xa8], 0
mov dword [esp + 0xac], 0
cmp byte [esp + 0x60], 0
je 0x4ec546
call fcn.00613fb0
sub eax, dword [esp + 0x50]
xor edx, edx
mov ecx, dword [esp + 0x58]
mov ebx, dword [esp + 0x5c]
sub ecx, eax
sbb ebx, edx
cmp ebx, 0
jl 0x4ec02e
jle 0x4ecaf8
mov eax, ecx
mov edx, ebx
neg eax
adc edx, 0
neg edx
shld edx, eax, 2
add eax, eax
add eax, eax
sub eax, ecx
sbb edx, ebx
shld edx, eax, 3
shl eax, 3
add eax, ecx
adc edx, ebx
shld edx, eax, 4
shl eax, 4
sub eax, ecx
sbb edx, ebx
shld edx, eax, 4
shl eax, 4
mov dword [esp + 0xa8], eax
mov dword [esp + 0xac], edx
mov eax, dword [esp + 0xa8]
mov edx, dword [esp + 0xac]
mov dword [esp + 0x90], eax
mov dword [esp + 0x94], edx
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
lea eax, [esp + 0x90]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x74]
mov dword [esp], eax
call fcn.00613ee8
sub esp, 0x18
test eax, eax
je 0x4ebb1d
mov eax, dword [esp + 0x74]
mov ebx, dword [esp + 0x24]
mov dword [esp + ebx*4 + 0xe4], eax
mov dword [esp + 0x28], ebx
mov esi, ebx
inc esi
mov dword [esp + 0x24], esi
jmp 0x4ebb25
mov eax, 0x1e
cmp word [esp + 0x48], ax
jbe case.0x4ebf26.0
lea esi, [esp + 0x8c]
lea eax, [esp + 0x73]
mov dword [esp + 4], eax
mov dword [esp], str.Day_of_month_is_not_valid_for_year
mov ecx, esi
call fcn.0069b6e0
push ebp
push ebp
lea ebx, [esp + 0xdc]
mov dword [esp], esi
mov ecx, ebx
call fcn.006a1250
push edi
mov dword [esp + 0xdc], 0x81a878
mov dword [esp], ebx
call fcn.006533bc
lea esi, [esi]
lea edi, [edi]
test esi, 3
jne 0x4ec260
mov eax, esi
shr ax, 2
and eax, 0xffff
lea edx, [eax + eax*4]
lea edx, [eax + edx*8]
shl edx, 5
sub edx, eax
shl edx, 2
sub edx, eax
shr edx, 0x11
lea edx, [edx + edx*4]
lea edx, [edx + edx*4]
shl edx, 2
cmp si, dx
jne 0x4ec176
mov edx, esi
shr dx, 4
and edx, 0xffff
lea eax, [edx + edx*4]
lea eax, [edx + eax*8]
shl eax, 5
sub eax, edx
add eax, eax
shr eax, 0x10
lea eax, [eax + eax*4]
lea eax, [eax + eax*4]
shl eax, 4
cmp si, ax
jne 0x4ec260
mov eax, 0x1d
jmp 0x4ec0b5
mov edi, eax
test eax, eax
js 0x4ec520
test ecx, ecx
js 0x4ec510
mov eax, ecx
cdq
mov ebx, edx
neg ecx
adc ebx, 0
neg ebx
shld ebx, ecx, 4
shl ecx, 4
add ecx, eax
adc ebx, edx
shld ebx, ecx, 2
add ecx, ecx
add ecx, ecx
mov esi, 0xfffff1f0
mov eax, edi
imul esi
add ecx, eax
adc ebx, edx
mov esi, dword [esp + 0x48]
test esi, esi
js 0x4ec500
mov edi, esi
sar edi, 0x1f
sub ecx, esi
sbb ebx, edi
imul ebx, ebx, 0xf4240
mov eax, 0xf4240
mul ecx
add edx, ebx
mov esi, eax
mov edi, edx
sub esi, dword [esp + 0x30]
sbb edi, dword [esp + 0x34]
test ebp, ebp
je 0x4ebe1b
cmp ebp, 0xffffffff
je 0x4eccae
cmp ebp, 0xfffffffe
je 0x4ec991
lea eax, [edi - 0x80000000]
or eax, esi
je 0x4ebe1b
imul ebx, ebp, 0x14
mov eax, 0x1dd76000
mul ebp
add edx, ebx
add esi, eax
adc edi, edx
jmp 0x4ebe30
mov eax, 0xfffffffe
mov bl, 1
jmp 0x4ebc0a
cmp esi, eax
jae 0x4ebc06
jmp 0x4ebf06
cmp eax, esi
jbe 0x4ebc06
jmp 0x4ebe46
mov eax, 0x1c
jmp 0x4ec0b5
call dword [0x93c964]
mov esi, eax
mov dword [esp], 0x663b90
call fcn.00663450
mov dword [esp + 0x50], esi
mov dword [esp + 0x58], ebx
mov dword [esp + 0x5c], 0
mov byte [esp + 0x60], 1
mov dword [esp + 0x68], eax
mov dword [esp + 0x6c], edx
mov dword [esp + 0x28], 0xffffffff
jmp 0x4ebb25
and ebx, 0xffff
jmp dword [ebx*4 + 0x7a2990]
mov esi, eax
test eax, eax
js 0x4eca4e
test ebx, ebx
js 0x4eca5c
mov eax, ebx
cdq
mov ecx, ebx
mov ebx, edx
neg ecx
adc ebx, 0
neg ebx
shld ebx, ecx, 4
shl ecx, 4
add ecx, eax
adc ebx, edx
shld ebx, ecx, 2
add ecx, ecx
add ecx, ecx
mov eax, 0xfffff1f0
imul esi
add ecx, eax
adc ebx, edx
mov eax, ebp
test ebp, ebp
js 0x4eca55
cdq
sub ecx, eax
sbb ebx, edx
imul ebx, ebx, 0xf4240
mov eax, 0xf4240
mul ecx
add edx, ebx
mov ecx, eax
mov ebx, edx
sub ecx, dword [esp + 0x28]
sbb ebx, dword [esp + 0x2c]
test edi, edi
je 0x4ebae4
cmp edi, 0xffffffff
je 0x4ecbfa
cmp edi, 0xfffffffe
je 0x4ecbeb
lea eax, [ebx - 0x80000000]
or eax, ecx
je 0x4ebae4
imul esi, edi, 0x14
mov eax, 0x1dd76000
mul edi
add edx, esi
add eax, ecx
adc edx, ebx
jmp 0x4ebaeb
mov eax, 0x1e
cmp word [esp + 0x38], ax
jbe case.0x4ec2b6.0
lea esi, [esp + 0x80]
lea eax, [esp + 0x71]
mov dword [esp + 4], eax
mov dword [esp], str.Day_of_month_is_not_valid_for_year
mov ecx, esi
call fcn.0069b6e0
push eax
push eax
lea ebx, [esp + 0xc4]
mov dword [esp], esi
mov ecx, ebx
call fcn.006a1250
push eax
mov dword [esp + 0xc4], 0x81a878
mov dword [esp], ebx
call fcn.006533bc
lea esi, [esi]
test byte [esp + 0x30], 3
jne 0x4eca30
mov eax, dword [esp + 0x30]
shr ax, 2
and eax, 0xffff
lea edx, [eax + eax*4]
lea edx, [eax + edx*8]
shl edx, 5
sub edx, eax
shl edx, 2
sub edx, eax
shr edx, 0x11
lea edx, [edx + edx*4]
lea edx, [edx + edx*4]
lea eax, [edx*4]
cmp word [esp + 0x30], ax
jne 0x4ec431
mov edx, dword [esp + 0x30]
shr dx, 4
and edx, 0xffff
lea eax, [edx + edx*4]
lea eax, [edx + eax*8]
shl eax, 5
sub eax, edx
add eax, eax
shr eax, 0x10
lea eax, [eax + eax*4]
lea eax, [eax + eax*4]
shl eax, 4
cmp word [esp + 0x30], ax
jne 0x4eca30
mov eax, 0x1d
jmp 0x4ec36a
mov ebx, eax
cmp eax, 0x14
jbe 0x4ebb12
jmp 0x4ebf6c
lea eax, [edi - 0x80000000]
or eax, esi
jne 0x4eca1c
lea esi, [esi]
mov ecx, 0xa5e353f8
mov ebx, 0x20c49b
mov eax, 0xa5e353f8
jmp 0x4ebed0
lea eax, [esp + 0xa0]
lea edx, [esp + 0x98]
mov dword [esp + 8], edx
lea edx, [esp + 0x68]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.00663a14
mov dword [esp + 8], 0x3e8
mov dword [esp + 0xc], 0
mov eax, dword [esp + 0xa0]
mov edx, dword [esp + 0xa4]
mov dword [esp], eax
mov dword [esp + 4], edx
call fcn.0061c5b0
add eax, 1
adc edx, 0
cmp edx, 0
ja 0x4ebf6c
jmp 0x4ebf63
mov ebx, 1
mov dword [esp + 0x40], 0xffffffff
mov dword [esp + 0x24], 0
jmp 0x4eb85b
neg esi
jmp 0x4ec1ca
neg ecx
jmp 0x4ec192
neg edi
jmp 0x4ec18a
xor eax, eax
jmp 0x4eb889
mov dword [esp], eax
call dword [0x93c894]
push eax
jmp 0x4ebf9d
lea edi, [esp + 0xf0]
mov dword [esp + 0x38], edi
mov ecx, 4
xor eax, eax
rep stosd dword es:[edi], eax
mov edi, dword [esp + 0x68]
mov esi, dword [esp + 0x6c]
lea eax, [esi - 0x80000000]
or eax, edi
je 0x4eca3a
mov eax, esi
xor eax, 0x7fffffff
mov edx, edi
not edx
or edx, eax
je 0x4eca3a
mov edx, edi
xor edx, 0xfffffffe
or eax, edx
je 0x4eca3a
mov dword [esp + 8], 0x1dd76000
mov dword [esp + 0xc], 0x14
mov dword [esp], edi
mov dword [esp + 4], esi
call fcn.0061c5b0
lea ecx, [eax + 0x7d2c]
lea ebx, [ecx*4 + 3]
mov ebp, 0x396b06bd
mov eax, ebx
mul ebp
mov ebx, edx
shr ebx, 0xf
lea eax, [ebx + ebx*2]
shl eax, 6
add eax, ebx
lea eax, [ebx + eax*4]
lea edx, [eax*4]
sub edx, eax
mov eax, edx
shl eax, 6
sub eax, edx
shr eax, 2
sub ecx, eax
lea eax, [ecx*4 + 3]
mov ebp, 0x166db073
mul ebp
shr edx, 7
mov dword [esp + 0x28], edx
lea eax, [edx + edx*8]
lea eax, [edx + eax*8]
lea eax, [eax + eax*4]
lea eax, [edx + eax*4]
shr eax, 2
mov ebp, ecx
sub ebp, eax
lea eax, [ebp + ebp*4 + 2]
mov ecx, 0xd62b80d7
mul ecx
mov ecx, edx
shr ecx, 7
inc ebp
lea eax, [ecx + ecx*8]
lea eax, [ecx + eax*2]
lea edx, [ecx + eax*8 + 2]
mov eax, 0xcccccccd
mul edx
shr edx, 2
sub ebp, edx
mov eax, 0xcccccccd
mul ecx
shr edx, 3
add ecx, 3
lea eax, [edx + edx*2]
shl eax, 2
sub ecx, eax
lea ebx, [ebx + ebx*4]
lea ebx, [ebx + ebx*4]
mov eax, dword [esp + 0x28]
lea ebx, [eax + ebx*4 - 0x12c0]
add ebx, edx
mov eax, ebx
and eax, 0xffff
cmp eax, 0x577
jle 0x4ecbba
cmp bx, 0x2710
ja 0x4ecbb5
mov eax, ebp
and eax, 0xffff
mov dword [esp + 0x28], eax
test eax, eax
je 0x4ecc34
cmp bp, 0x1f
ja 0x4ecc2f
mov eax, ecx
and eax, 0xffff
test eax, eax
je 0x4ecc2a
cmp cx, 0xc
ja 0x4ecc25
mov ebp, 0xe
sub ebp, eax
mov edx, 0x2aaaaaab
mov eax, ebp
imul edx
sar edx, 1
sar ebp, 0x1f
sub edx, ebp
add ebx, 0x12c0
sub ebx, edx
lea edx, [edx + edx*2]
lea ecx, [ecx + edx*4 - 3]
and ecx, 0xffff
lea eax, [ecx + ecx*8]
lea eax, [ecx + eax*2]
lea eax, [ecx + eax*8 + 2]
mov edx, 0x66666667
imul edx
shr edx, 1
mov ecx, dword [esp + 0x28]
add ecx, edx
mov eax, ebx
and eax, 0xffff
lea edx, [eax + eax*8]
lea eax, [eax + edx*8]
lea eax, [eax + eax*4]
add ecx, eax
mov eax, ebx
shr ax, 2
and eax, 0xffff
add ecx, eax
lea edx, [eax + eax*4]
lea edx, [eax + edx*8]
shl edx, 5
sub edx, eax
shl edx, 2
sub edx, eax
shr edx, 0x11
sub ecx, edx
shr bx, 4
and ebx, 0xffff
lea eax, [ebx + ebx*4]
lea eax, [ebx + eax*8]
shl eax, 5
sub eax, ebx
add eax, eax
shr eax, 0x10
lea ecx, [ecx + eax - 1]
lea ebp, [ecx*4 + 3]
mov ebx, 0x396b06bd
mov eax, ebp
mul ebx
mov ebp, edx
shr ebp, 0xf
lea eax, [ebp + ebp*2]
shl eax, 6
add eax, ebp
lea eax, [ebp + eax*4]
lea edx, [eax*4]
sub edx, eax
mov eax, edx
shl eax, 6
sub eax, edx
shr eax, 2
sub ecx, eax
lea eax, [ecx*4 + 3]
mov ebx, 0x166db073
mul ebx
shr edx, 7
mov dword [esp + 0x30], edx
lea eax, [edx + edx*8]
lea eax, [edx + eax*8]
lea eax, [eax + eax*4]
lea eax, [edx + eax*4]
shr eax, 2
sub ecx, eax
lea eax, [ecx + ecx*4 + 2]
mov ebx, 0xd62b80d7
mul ebx
shr edx, 7
mov dword [esp + 0x28], edx
lea eax, [edx + edx*8]
lea eax, [edx + eax*2]
lea edx, [edx + eax*8 + 2]
mov ebx, 0xcccccccd
mov eax, edx
mul ebx
shr edx, 2
inc ecx
sub ecx, edx
mov eax, dword [esp + 0x28]
mul ebx
shr edx, 3
lea ebx, [edx + edx*2]
shl ebx, 2
mov eax, dword [esp + 0x28]
add eax, 3
sub eax, ebx
lea ebx, [ebp + ebp*4]
lea ebx, [ebx + ebx*4]
mov ebp, dword [esp + 0x30]
lea ebx, [ebp + ebx*4 - 0x12c0]
add edx, ebx
mov ebx, edx
and ebx, 0xffff
cmp ebx, 0x577
jle 0x4ecc20
cmp dx, 0x2710
ja 0x4eca3a
test cx, cx
je 0x4ecc1b
cmp cx, 0x1f
ja 0x4ecc16
test ax, ax
je 0x4ecc11
cmp ax, 0xc
ja 0x4ecbd7
mov word [esp + 0xf0], dx
mov word [esp + 0xf2], ax
mov word [esp + 0xf6], cx
mov dword [esp + 8], 0x1dd76000
mov dword [esp + 0xc], 0x14
mov dword [esp], edi
mov dword [esp + 4], esi
call fcn.0061c710
mov dword [esp + 8], 0xd693a400
mov dword [esp + 0xc], 0
mov dword [esp], eax
mov dword [esp + 4], edx
call fcn.0061c5b0
mov word [esp + 0xf8], ax
mov dword [esp + 8], 0x1dd76000
mov dword [esp + 0xc], 0x14
mov dword [esp], edi
mov dword [esp + 4], esi
call fcn.0061c710
mov dword [esp + 8], 0x3938700
mov dword [esp + 0xc], 0
mov dword [esp], eax
mov dword [esp + 4], edx
call fcn.0061c5b0
mov dword [esp + 8], 0x3c
mov dword [esp + 0xc], 0
mov dword [esp], eax
mov dword [esp + 4], edx
call fcn.0061c710
mov word [esp + 0xfa], ax
mov dword [esp + 8], 0x1dd76000
mov dword [esp + 0xc], 0x14
mov dword [esp], edi
mov dword [esp + 4], esi
call fcn.0061c710
mov dword [esp + 8], 0xf4240
mov dword [esp + 0xc], 0
mov dword [esp], eax
mov dword [esp + 4], edx
call fcn.0061c5b0
mov dword [esp + 8], 0x3c
mov dword [esp + 0xc], 0
mov dword [esp], eax
mov dword [esp + 4], edx
call fcn.0061c710
mov word [esp + 0xfc], ax
lea eax, [esp + 0xa8]
mov dword [esp + 4], eax
lea eax, [esp + 0xf0]
mov dword [esp], eax
call fcn.00613fc0
sub esp, 8
test eax, eax
jne 0x4eca63
mov dword [esp + 0xa8], 0
mov dword [esp + 0xac], 0
jmp 0x4ec02e
mov esi, 0xfffffffe
mov edi, 0x7fffffff
jmp 0x4ebe30
mov ebx, edi
xor ebx, 0x7fffffff
mov ecx, esi
xor ecx, 0xfffffffe
or ebx, ecx
je 0x4ec460
mov ebx, eax
not ebx
mov ecx, edx
xor ecx, 0x7fffffff
or ecx, ebx
je 0x4ec460
lea ecx, [edx - 0x80000000]
or ecx, eax
je 0x4ec44b
mov ebx, edi
xor ebx, 0x7fffffff
mov ecx, esi
not ecx
or ebx, ecx
je 0x4eca1c
lea ecx, [edi - 0x80000000]
or ecx, esi
je 0x4ec460
sub eax, esi
sbb edx, edi
mov ebx, edx
xor ebx, 0x7fffffff
mov ecx, eax
xor ecx, 0xfffffffe
or ebx, ecx
je 0x4ec460
add edx, 0x80000000
or edx, eax
jne 0x4ec460
mov ecx, 0x5a1cac0a
mov ebx, 0xffdf3b64
mov eax, 0x5a1cac0a
jmp 0x4ebed0
mov eax, 0x1c
jmp 0x4ec36a
call fcn.004eb6d0
nop
mov bl, 1
jmp 0x4ebbac
xor eax, eax
jmp 0x4eb8a6
neg esi
jmp 0x4ec2ca
neg eax
jmp 0x4ec308
neg ebx
jmp 0x4ec2d2
mov eax, dword [esp + 0x68]
mov edx, dword [esp + 0x6c]
lea ecx, [edx - 0x80000000]
or ecx, eax
je 0x4ecb06
mov ecx, edx
xor ecx, 0x7fffffff
mov ebx, eax
not ebx
or ebx, ecx
je 0x4ecb12
mov ebx, eax
xor ebx, 0xfffffffe
or ecx, ebx
je 0x4ecb1b
mov dword [esp + 8], 0x1dd76000
mov dword [esp + 0xc], 0x14
mov dword [esp], eax
mov dword [esp + 4], edx
call fcn.0061c710
mov dword [esp + 8], 0xf4240
mov dword [esp + 0xc], 0
mov dword [esp], eax
mov dword [esp + 4], edx
call fcn.0061c710
mov ecx, eax
mov ebx, edx
add ecx, eax
adc ebx, edx
shld edx, eax, 3
shl eax, 3
add ecx, eax
adc ebx, edx
add dword [esp + 0xa8], ecx
adc dword [esp + 0xac], ebx
jmp 0x4ec02e
cmp ecx, 0
jbe 0x4ec02e
jmp 0x4ebfec
mov ecx, 0xff899f00
mov ebx, 0xffffffff
jmp 0x4ecae5
mov ecx, 0x7660f6
xor ebx, ebx
jmp 0x4ecae5
mov ecx, 0x7660ec
xor ebx, ebx
jmp 0x4ecae5
mov eax, dword [0x91d1a8]
cmp eax, 0xffffffff
je 0x4ecb7b
mov dword [esp], eax
call fcn.00613f08
push edx
mov eax, dword [eax + 0xc]
mov dword [esp], eax
call dword [0x93c9f8]
push ebp
mov dword [esp], 1
call fcn.0071f2a0
mov dword [esp + 8], 0
mov dword [esp + 4], 0x7ed720
mov dword [esp], eax
call fcn.0071fa50
mov ebx, eax
lea ecx, [esp + 0x74]
call fcn.00661338
mov dword [esp], ebx
call fcn.0061f380
xor eax, eax
jmp 0x4ecb37
lea esi, [esp + 0x7c]
lea eax, [esp + 0x70]
mov dword [esp + 4], eax
mov dword [esp], str.could_not_convert_calendar_time_to_UTC_time
mov ecx, esi
call fcn.0069b6e0
push edx
push edx
lea ebx, [esp + 0xbc]
mov dword [esp], esi
mov ecx, ebx
call fcn.006aa810
push eax
mov dword [esp], ebx
call fcn.006536ec
call fcn.004eb6d0
call fcn.004eb6d0
mov edi, eax
mov ecx, ebx
call fcn.006aa870
mov ebx, edi
mov ecx, esi
call fcn.0069bcc0
jmp 0x4ecb6a
call fcn.004eb760
mov edi, eax
mov ecx, ebx
call fcn.00663e60
mov ebx, edi
jmp 0x4ecbca
mov eax, 0xfffffffe
mov edx, 0x7fffffff
jmp 0x4ebaeb
lea eax, [ebx - 0x80000000]
or eax, ecx
je 0x4ecbeb
or eax, 0xffffffff
mov edx, 0x7fffffff
jmp 0x4ebaeb
call fcn.004eb760
call fcn.004eac70
call fcn.004eac70
call fcn.004eb6d0
call fcn.004eb760
call fcn.004eb760
call fcn.004eac70
call fcn.004eac70
call fcn.004eac70
call fcn.004eb6d0
lea esi, [esp + 0x88]
lea eax, [esp + 0x72]
mov dword [esp + 4], eax
mov dword [esp], str.could_not_convert_calendar_time_to_UTC_time
mov ecx, esi
call fcn.0069b6e0
push eax
push eax
lea ebx, [esp + 0xd4]
mov dword [esp], esi
mov ecx, ebx
call fcn.006aa810
push eax
mov dword [esp], ebx
call fcn.006536ec
call fcn.004eac70
call fcn.004eac70
call fcn.004eb760
call fcn.004eb760
jmp 0x4ecbbf
call fcn.004eb6d0
call fcn.004eb760
call fcn.004eb760
call fcn.004eac70
lea eax, [edi - 0x80000000]
or eax, esi
je 0x4ec991
or esi, 0xffffffff
mov edi, 0x7fffffff
jmp 0x4ebe30
call fcn.004eb6d0
call fcn.004eb6d0
jmp 0x4ecbdc