Function at 0x6165ea
Capabilities:
Link many functions at runtime

Disassembly:
push ebp
mov ebp, esp
mov edx, dword [ebp + 8]
push esi
xor ecx, ecx
mov esi, 0x7b2aa8
inc ecx
mov eax, edx
lock cmpxchg dword [esi], ecx
cmp eax, edx
je 0x61660f
mov edx, eax
cmp eax, 1
jbe 0x6165f1
jmp 0x6167fe
push ebx
push edi
push 2
pop ebx
push 0x800
xor esi, esi
push esi
push str.icu.dll
call dword [sym.imp.KERNEL32.DLL_LoadLibraryExW]
mov edi, eax
test edi, edi
je 0x6167f3
push str.ucal_close
push edi
call dword [sym.imp.KERNEL32.DLL_GetProcAddress]
test eax, eax
je 0x616648
mov dword [0x7b2a70], eax
jmp 0x616650
call dword [sym.imp.KERNEL32.DLL_GetLastError]
mov esi, eax
push str.ucal_get
push edi
call dword [sym.imp.KERNEL32.DLL_GetProcAddress]
test eax, eax
je 0x616667
mov dword [0x7b2a74], eax
jmp 0x61666f
call dword [sym.imp.KERNEL32.DLL_GetLastError]
mov esi, eax
push str.ucal_getCanonicalTimeZoneID
push edi
call dword [sym.imp.KERNEL32.DLL_GetProcAddress]
test eax, eax
je 0x616686
mov dword [0x7b2a78], eax
jmp 0x61668e
call dword [sym.imp.KERNEL32.DLL_GetLastError]
mov esi, eax
push str.ucal_getDefaultTimeZone
push edi
call dword [sym.imp.KERNEL32.DLL_GetProcAddress]
test eax, eax
je 0x6166a5
mov dword [0x7b2a7c], eax
jmp 0x6166ad
call dword [sym.imp.KERNEL32.DLL_GetLastError]
mov esi, eax
push str.ucal_getTimeZoneDisplayName
push edi
call dword [sym.imp.KERNEL32.DLL_GetProcAddress]
test eax, eax
je 0x6166c4
mov dword [0x7b2a80], eax
jmp 0x6166cc
call dword [sym.imp.KERNEL32.DLL_GetLastError]
mov esi, eax
push str.ucal_getTimeZoneTransitionDate
push edi
call dword [sym.imp.KERNEL32.DLL_GetProcAddress]
test eax, eax
je 0x6166e3
mov dword [0x7b2a84], eax
jmp 0x6166eb
call dword [sym.imp.KERNEL32.DLL_GetLastError]
mov esi, eax
push str.ucal_getTZDataVersion
push edi
call dword [sym.imp.KERNEL32.DLL_GetProcAddress]
test eax, eax
je 0x616702
mov dword [0x7b2a88], eax
jmp 0x61670a
call dword [sym.imp.KERNEL32.DLL_GetLastError]
mov esi, eax
push str.ucal_inDaylightTime
push edi
call dword [sym.imp.KERNEL32.DLL_GetProcAddress]
test eax, eax
je 0x616721
mov dword [0x7b2a8c], eax
jmp 0x616729
call dword [sym.imp.KERNEL32.DLL_GetLastError]
mov esi, eax
push str.ucal_open
push edi
call dword [sym.imp.KERNEL32.DLL_GetProcAddress]
test eax, eax
je 0x616740
mov dword [0x7b2a90], eax
jmp 0x616748
call dword [sym.imp.KERNEL32.DLL_GetLastError]
mov esi, eax
push str.ucal_openTimeZoneIDEnumeration
push edi
call dword [sym.imp.KERNEL32.DLL_GetProcAddress]
test eax, eax
je 0x61675f
mov dword [0x7b2a94], eax
jmp 0x616767
call dword [sym.imp.KERNEL32.DLL_GetLastError]
mov esi, eax
push str.ucal_setMillis
push edi
call dword [sym.imp.KERNEL32.DLL_GetProcAddress]
test eax, eax
je 0x61677e
mov dword [0x7b2a98], eax
jmp 0x616786
call dword [sym.imp.KERNEL32.DLL_GetLastError]
mov esi, eax
push str.uenum_close
push edi
call dword [sym.imp.KERNEL32.DLL_GetProcAddress]
test eax, eax
je 0x61679d
mov dword [0x7b2a9c], eax
jmp 0x6167a5
call dword [sym.imp.KERNEL32.DLL_GetLastError]
mov esi, eax
push str.uenum_count
push edi
call dword [sym.imp.KERNEL32.DLL_GetProcAddress]
test eax, eax
je 0x6167bc
mov dword [0x7b2aa0], eax
jmp 0x6167c4
call dword [sym.imp.KERNEL32.DLL_GetLastError]
mov esi, eax
push str.uenum_unext
push edi
call dword [sym.imp.KERNEL32.DLL_GetProcAddress]
test eax, eax
je 0x6167db
mov dword [0x7b2aa4], eax
jmp 0x6167e3
call dword [sym.imp.KERNEL32.DLL_GetLastError]
mov esi, eax
test esi, esi
jne 0x6167ec
push 3
pop ebx
jmp 0x6167f3
push esi
call dword [sym.imp.KERNEL32.DLL_SetLastError]
nop
pop edi
mov dword [0x7b2aa8], ebx
mov eax, ebx
pop ebx
pop esi
pop ebp
ret