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

Disassembly:
mov ecx, dword [0x64f96c]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
lea eax, [esp - 0x1c]
cmp eax, dword [ecx + 8]
jbe 0x4ad108
sub esp, 0x9c
mov eax, 0
mov dword [esp + 0x98], eax
mov byte [esp + 0x2f], 0
mov dword [esp + 0xb0], 0
mov dword [esp + 0xb4], 0
mov dword [esp + 0xb8], 0
mov dword [esp + 0xbc], 0
mov dword [esp + 0xc0], 0
mov eax, dword [esp + 0xa0]
mov dword [esp], eax
mov ecx, dword [esp + 0xa4]
mov dword [esp + 4], ecx
call sym.time.open
mov eax, dword [esp + 0xc]
test eax, eax
jne 0x4ac966
mov eax, dword [esp + 8]
mov dword [esp + 0x5c], eax
lea ecx, [sym.time.loadTzinfoFromZip.deferwrap1]
mov dword [esp + 0x64], ecx
mov dword [esp + 0x68], eax
lea ecx, [esp + 0x64]
mov dword [esp + 0x98], ecx
mov byte [esp + 0x2f], 1
lea ecx, [0x51f6c0]
mov dword [esp], ecx
mov dword [esp + 4], 0x16
mov dword [esp + 8], 0x16
call sym.runtime.makeslice
mov eax, dword [esp + 0xc]
mov dword [esp + 0x94], eax
mov ecx, dword [esp + 0x5c]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], 0x16
mov dword [esp + 0xc], 0x16
mov dword [esp + 0x10], 0xffffffea
call sym.time.preadn
mov eax, dword [esp + 0x14]
test eax, eax
jne 0x4ac74e
mov eax, dword [esp + 0x94]
cmp dword [eax], 0x6054b50
je 0x4ac81d
mov dword [esp], 0
lea eax, [0x53f46c]
mov dword [esp + 4], eax
mov dword [esp + 8], 0x11
mov eax, dword [esp + 0xa0]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xa4]
mov dword [esp + 0x10], eax
call sym.runtime.concatstring2
mov eax, dword [esp + 0x18]
mov dword [esp + 0x50], eax
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x8c], ecx
lea edx, [0x524a60]
mov dword [esp], edx
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x50]
mov dword [eax + 4], ecx
mov ecx, dword [0x64faa8]
test ecx, ecx
jne 0x4ac7c1
mov ecx, dword [esp + 0x8c]
jmp 0x4ac7cf
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0x8c]
mov dword [edi], ecx
mov dword [eax], ecx
mov dword [esp + 0xb0], 0
mov dword [esp + 0xb4], 0
mov dword [esp + 0xb8], 0
lea ecx, [0x573c54]
mov dword [esp + 0xbc], ecx
mov dword [esp + 0xc0], eax
mov byte [esp + 0x2f], 0
mov edx, dword [esp + 0x98]
mov eax, dword [edx]
call eax
add esp, 0x9c
ret
mov ecx, dword [eax + 0xc]
mov dword [esp + 0x78], ecx
mov edx, dword [eax + 0x10]
mov dword [esp + 0x74], edx
nop
nop
nop
movzx eax, word [eax + 0xa]
mov dword [esp + 0x70], eax
lea ebx, [0x51f6c0]
mov dword [esp], ebx
mov dword [esp + 4], ecx
mov dword [esp + 8], ecx
call sym.runtime.makeslice
mov eax, dword [esp + 0xc]
mov dword [esp + 0x94], eax
mov ecx, dword [esp + 0x5c]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov edx, dword [esp + 0x78]
mov dword [esp + 8], edx
mov dword [esp + 0xc], edx
mov ebx, dword [esp + 0x74]
mov dword [esp + 0x10], ebx
call sym.time.preadn
mov eax, dword [esp + 0x14]
test eax, eax
jne 0x4ac897
mov eax, dword [esp + 0x94]
mov ecx, dword [esp + 0x78]
mov ebx, dword [esp + 0x70]
jmp 0x4ac9a9
mov dword [esp], 0
lea eax, [0x53f46c]
mov dword [esp + 4], eax
mov dword [esp + 8], 0x11
mov eax, dword [esp + 0xa0]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xa4]
mov dword [esp + 0x10], eax
call sym.runtime.concatstring2
mov eax, dword [esp + 0x18]
mov dword [esp + 0x4c], eax
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x88], ecx
lea edx, [0x524a60]
mov dword [esp], edx
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x4c]
mov dword [eax + 4], ecx
mov ecx, dword [0x64faa8]
test ecx, ecx
jne 0x4ac90a
mov ecx, dword [esp + 0x88]
jmp 0x4ac918
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0x88]
mov dword [edi], ecx
mov dword [eax], ecx
mov dword [esp + 0xb0], 0
mov dword [esp + 0xb4], 0
mov dword [esp + 0xb8], 0
lea ecx, [0x573c54]
mov dword [esp + 0xbc], ecx
mov dword [esp + 0xc0], eax
mov byte [esp + 0x2f], 0
mov edx, dword [esp + 0x98]
mov eax, dword [edx]
call eax
add esp, 0x9c
ret
mov ecx, dword [esp + 0x10]
mov dword [esp + 0xb0], 0
mov dword [esp + 0xb4], 0
mov dword [esp + 0xb8], 0
mov dword [esp + 0xbc], eax
mov dword [esp + 0xc0], ecx
add esp, 0x9c
ret
mov ebp, dword [esp + 0x58]
dec ebp
mov eax, ebx
mov ebx, ebp
test ebx, ebx
jle 0x4ad029
cmp ecx, 4
jge 0x4ac9ba
xor ebp, ebp
jmp 0x4ac9bc
mov ebp, dword [eax]
cmp ebp, 0x2014b50
jne 0x4ad029
cmp ecx, 0xa
jb 0x4ad0f1
lea ebp, [ecx - 0xa]
cmp ebp, 2
jge 0x4ac9dd
xor ebp, ebp
jmp 0x4ac9ee
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and ebp, 0xa
movzx ebp, word [ebp + eax]
cmp ecx, 0x18
jb 0x4ad0e7
lea esi, [ecx - 0x18]
cmp esi, 4
jge 0x4aca03
xor esi, esi
jmp 0x4aca12
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and esi, 0x18
mov esi, dword [esi + eax]
cmp ecx, 0x1c
jb 0x4ad0dd
lea edi, [ecx - 0x1c]
cmp edi, 2
jge 0x4aca27
xor edi, edi
jmp 0x4aca37
xchg edi, ebx
neg ebx
xchg edi, ebx
sar edi, 0x1f
and edi, 0x1c
movzx edi, word [eax + edi]
cmp ecx, 0x1e
jb 0x4ad0d3
lea edx, [ecx - 0x1e]
cmp edx, 2
jge 0x4aca4c
xor edx, edx
jmp 0x4aca58
neg edx
sar edx, 0x1f
and edx, 0x1e
movzx edx, word [eax + edx]
cmp ecx, 0x20
jb 0x4ad0c9
mov dword [esp + 0x38], esi
lea esi, [ecx - 0x20]
cmp esi, 2
jge 0x4aca71
xor esi, esi
jmp 0x4aca81
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and esi, 0x20
movzx esi, word [esi + eax]
cmp ecx, 0x2a
jb 0x4ad0bf
mov dword [esp + 0x3c], ebp
lea ebp, [ecx - 0x2a]
cmp ebp, 4
jge 0x4aca9a
xor ebp, ebp
jmp 0x4acaaa
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and ebp, 0x2a
mov ebp, dword [ebp + eax]
mov dword [esp + 0x54], ebp
lea ebp, [edi + 0x2e]
cmp ecx, ebp
jb 0x4ad0b6
cmp ebp, 0x2e
jb 0x4ad0aa
mov dword [esp + 0x58], ebx
lea ebp, [ecx - 0x2e]
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and ebp, 0x2e
add edx, edi
lea ebx, [esi + edx + 0x2e]
add ebp, eax
add esi, edx
cmp ecx, ebx
jb 0x4ad0a3
sub ecx, esi
lea esi, [ecx - 0x2e]
mov ecx, esi
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and ebx, esi
add ebx, eax
mov esi, dword [esp + 0xac]
cmp esi, edi
jne 0x4ac9a0
mov dword [esp + 0x34], edi
mov dword [esp + 0x6c], ecx
mov dword [esp + 0x90], ebx
mov dword [esp], ebp
mov eax, dword [esp + 0xa8]
mov dword [esp + 4], eax
mov dword [esp + 8], edi
call sym.runtime.memequal
movzx eax, byte [esp + 0xc]
test al, al
jne 0x4acb50
mov ecx, dword [esp + 0x6c]
mov ebx, dword [esp + 0x90]
mov esi, dword [esp + 0xac]
jmp 0x4ac9a0
mov eax, dword [esp + 0x3c]
test eax, eax
je 0x4acc53
mov dword [esp], 0
lea eax, [0x5431da]
mov dword [esp + 4], eax
mov dword [esp + 8], 0x1c
mov eax, dword [esp + 0xa8]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xac]
mov dword [esp + 0x10], eax
lea eax, [0x53c3f0]
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], 4
mov eax, dword [esp + 0xa0]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0xa4]
mov dword [esp + 0x20], eax
call sym.runtime.concatstring4
mov eax, dword [esp + 0x28]
mov dword [esp + 0x48], eax
mov ecx, dword [esp + 0x24]
mov dword [esp + 0x84], ecx
lea edx, [0x524a60]
mov dword [esp], edx
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x48]
mov dword [eax + 4], ecx
mov ecx, dword [0x64faa8]
test ecx, ecx
jne 0x4acbf7
mov ecx, dword [esp + 0x84]
jmp 0x4acc05
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0x84]
mov dword [edi], ecx
mov dword [eax], ecx
mov dword [esp + 0xb0], 0
mov dword [esp + 0xb4], 0
mov dword [esp + 0xb8], 0
lea ecx, [0x573c54]
mov dword [esp + 0xbc], ecx
mov dword [esp + 0xc0], eax
mov byte [esp + 0x2f], 0
mov edx, dword [esp + 0x98]
mov eax, dword [edx]
call eax
add esp, 0x9c
ret
lea eax, [0x51f6c0]
mov dword [esp], eax
mov ecx, dword [esp + 0x34]
lea edx, [ecx + 0x1e]
mov dword [esp + 0x60], edx
mov dword [esp + 4], edx
mov dword [esp + 8], edx
call sym.runtime.makeslice
mov eax, dword [esp + 0xc]
mov dword [esp + 0x94], eax
mov ecx, dword [esp + 0x5c]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov edx, dword [esp + 0x60]
mov dword [esp + 8], edx
mov dword [esp + 0xc], edx
mov ebx, dword [esp + 0x54]
mov dword [esp + 0x10], ebx
call sym.time.preadn
mov eax, dword [esp + 0x14]
test eax, eax
je 0x4accc4
mov ecx, dword [esp + 0x60]
mov edx, dword [esp + 0x94]
mov ebx, dword [esp + 0x34]
mov eax, 1
jmp 0x4acdb7
mov ecx, dword [esp + 0x60]
cmp ecx, 4
jge 0x4accd8
mov edx, dword [esp + 0x94]
xor ebx, ebx
jmp 0x4acce1
mov edx, dword [esp + 0x94]
mov ebx, dword [edx]
cmp ebx, 0x4034b50
je 0x4accf7
mov ebx, dword [esp + 0x34]
mov eax, 1
jmp 0x4acdb7
cmp ecx, 8
jb 0x4ad099
mov ebx, dword [esp + 0x34]
lea ebp, [ebx + 0x16]
cmp ebp, 2
jge 0x4acd10
xor ebp, ebp
jmp 0x4acd21
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and ebp, 8
movzx ebp, word [ebp + edx]
test ebp, ebp
je 0x4acd2f
mov eax, 1
jmp 0x4acdb7
cmp ecx, 0x1a
jb 0x4ad08f
lea ebp, [ebx + 4]
cmp ebp, 2
jge 0x4acd44
xor ebp, ebp
jmp 0x4acd55
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and ebp, 0x1a
movzx ebp, word [ebp + edx]
cmp ebp, ebx
je 0x4acd60
mov eax, 1
jmp 0x4acdb7
cmp ecx, 0x1e
jb 0x4ad085
mov ebp, ebx
neg ebx
sar ebx, 0x1f
and ebx, 0x1e
add ebx, edx
mov esi, dword [esp + 0xac]
cmp esi, ebp
je 0x4acd87
mov eax, 1
jmp 0x4acdb5
mov dword [esp], ebx
mov eax, dword [esp + 0xa8]
mov dword [esp + 4], eax
mov dword [esp + 8], ebp
call sym.runtime.memequal
movzx eax, byte [esp + 0xc]
xor eax, 1
mov ecx, dword [esp + 0x60]
mov edx, dword [esp + 0x94]
mov ebp, dword [esp + 0x34]
mov ebx, ebp
test al, al
jne 0x4acf5a
cmp ecx, 0x1c
jb 0x4ad07b
lea eax, [ebx + 2]
cmp eax, 2
jge 0x4acdd4
xor eax, eax
jmp 0x4acde0
neg eax
sar eax, 0x1f
and eax, 0x1c
movzx eax, word [eax + edx]
mov dword [esp + 0x30], eax
lea ecx, [0x51f6c0]
mov dword [esp], ecx
mov ecx, dword [esp + 0x38]
mov dword [esp + 4], ecx
mov dword [esp + 8], ecx
call sym.runtime.makeslice
mov eax, dword [esp + 0xc]
mov dword [esp + 0x94], eax
mov ecx, dword [esp + 0x5c]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov ecx, dword [esp + 0x38]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ecx
mov edx, dword [esp + 0x34]
mov ebx, dword [esp + 0x54]
add edx, ebx
mov ebx, dword [esp + 0x30]
lea edx, [ebx + edx + 0x1e]
mov dword [esp + 0x10], edx
call sym.time.preadn
mov eax, dword [esp + 0x14]
test eax, eax
je 0x4acf0d
mov dword [esp], 0
lea eax, [0x53f46c]
mov dword [esp + 4], eax
mov dword [esp + 8], 0x11
mov eax, dword [esp + 0xa0]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xa4]
mov dword [esp + 0x10], eax
call sym.runtime.concatstring2
mov eax, dword [esp + 0x18]
mov dword [esp + 0x40], eax
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x7c], ecx
lea edx, [0x524a60]
mov dword [esp], edx
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x40]
mov dword [eax + 4], ecx
mov ecx, dword [0x64faa8]
test ecx, ecx
jne 0x4aceb4
mov ecx, dword [esp + 0x7c]
jmp 0x4acebf
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0x7c]
mov dword [edi], ecx
mov dword [eax], ecx
mov dword [esp + 0xb0], 0
mov dword [esp + 0xb4], 0
mov dword [esp + 0xb8], 0
lea ecx, [0x573c54]
mov dword [esp + 0xbc], ecx
mov dword [esp + 0xc0], eax
mov byte [esp + 0x2f], 0
mov edx, dword [esp + 0x98]
mov eax, dword [edx]
call eax
add esp, 0x9c
ret
mov eax, dword [esp + 0x94]
mov dword [esp + 0xb0], eax
mov eax, dword [esp + 0x38]
mov dword [esp + 0xb4], eax
mov dword [esp + 0xb8], eax
mov dword [esp + 0xbc], 0
mov dword [esp + 0xc0], 0
mov byte [esp + 0x2f], 0
mov edx, dword [esp + 0x98]
mov eax, dword [edx]
call eax
add esp, 0x9c
ret
mov dword [esp], 0
lea eax, [0x53f46c]
mov dword [esp + 4], eax
mov dword [esp + 8], 0x11
mov eax, dword [esp + 0xa0]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xa4]
mov dword [esp + 0x10], eax
call sym.runtime.concatstring2
mov eax, dword [esp + 0x18]
mov dword [esp + 0x44], eax
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x80], ecx
lea edx, [0x524a60]
mov dword [esp], edx
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x44]
mov dword [eax + 4], ecx
mov ecx, dword [0x64faa8]
test ecx, ecx
jne 0x4acfcd
mov ecx, dword [esp + 0x80]
jmp 0x4acfdb
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0x80]
mov dword [edi], ecx
mov dword [eax], ecx
mov dword [esp + 0xb0], 0
mov dword [esp + 0xb4], 0
mov dword [esp + 0xb8], 0
lea ecx, [0x573c54]
mov dword [esp + 0xbc], ecx
mov dword [esp + 0xc0], eax
mov byte [esp + 0x2f], 0
mov edx, dword [esp + 0x98]
mov eax, dword [edx]
call eax
add esp, 0x9c
ret
mov dword [esp + 0xb0], 0
mov dword [esp + 0xb4], 0
mov dword [esp + 0xb8], 0
lea eax, [0x573ce0]
mov dword [esp + 0xbc], eax
lea eax, [0x5728bc]
mov dword [esp + 0xc0], eax
mov byte [esp + 0x2f], 0
mov edx, dword [esp + 0x98]
mov eax, dword [edx]
call eax
add esp, 0x9c
ret
mov eax, 0x1c
call sym.runtime.panicSliceB
mov eax, 0x1e
call sym.runtime.panicSliceB
mov eax, 0x1a
call sym.runtime.panicSliceB
mov eax, 8
call sym.runtime.panicSliceB
mov eax, ebx
call sym.runtime.panicSliceB
mov eax, 0x2e
mov ecx, ebp
call sym.runtime.panicSliceB
mov edx, ecx
mov ecx, ebp
call sym.runtime.panicSliceAcap
mov eax, 0x2a
call sym.runtime.panicSliceB
mov eax, 0x20
call sym.runtime.panicSliceB
mov eax, 0x1e
call sym.runtime.panicSliceB
mov eax, 0x1c
call sym.runtime.panicSliceB
mov eax, 0x18
call sym.runtime.panicSliceB
mov eax, 0xa
call sym.runtime.panicSliceB
nop
call sym.runtime.deferreturn
add esp, 0x9c
ret
call sym.runtime.morestack_noctxt
jmp sym.time.loadTzinfoFromZip