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

Disassembly:
push edi
push esi
sub esp, 0x84
mov eax, dword [esp + 0x94]
mov edx, dword [esp + 0x90]
mov esi, 0x380484c8
mov dword [esp + 0x80], eax
mov dword [esp + 0x7c], edx
mov dword [esp + 0x78], ecx
mov eax, ecx
mov dword [0x49c020], 0x88a04662
mov edx, esp
mov dword [edx + 4], 0x31e
mov dword [edx], 0x4bba
mov dword [esp + 0x58], ecx
mov dword [esp + 0x54], esi
mov dword [esp + 0x50], eax
call fcn.00437eb0
mov ecx, dword [esp + 0x58]
mov dword [ecx + 0x34], eax
mov di, word [0x4afa4c]
movsx eax, di
sar eax, 5
add eax, 0xe2a1102
or eax, 0x2c2fe5f6
mov edx, dword [esp + 0x54]
cmp edx, eax
jl 0x436bb2
mov eax, dword [0x4a644c]
add eax, 0x6ba7318a
and eax, 0x709f22a
mov ecx, dword [0x4994f8]
add ecx, eax
mov dword [0x4994f8], ecx
jmp 0x436bc7
mov eax, dword [0x4991b8]
not eax
mov ecx, dword [0x49e348]
or ecx, eax
mov dword [0x49e348], ecx
mov eax, 0x728e7e2c
mov ecx, esp
mov dword [ecx + 4], 0xaf1
mov dword [ecx], 0x51e6
mov dword [esp + 0x4c], eax
call fcn.00437eb0
mov ecx, dword [esp + 0x50]
mov dword [ecx + 0x30], eax
mov eax, dword [0x4aa2b4]
mov edx, eax
inc edx
mov dword [0x4aa2b4], edx
mov si, word [0x4adcc6]
mov dx, si
inc edx
mov di, dx
mov word [0x4adcc6], di
movsx edx, si
lea eax, [eax + edx + 1]
xor eax, 0x44531fe3
mov dword [0x49a9b0], eax
mov eax, dword [0x497620]
mov edx, esp
mov dword [edx], ecx
call eax
sub esp, 4
mov eax, dword [0x4a1608]
dec eax
mov dword [0x4a1608], eax
mov ecx, dword [esp + 0x4c]
cmp ecx, eax
jge 0x436c79
mov ax, word [0x4af4ea]
mov cx, ax
inc ecx
mov dx, cx
mov word [0x4af4ea], dx
movsx ecx, ax
and ecx, 0x1991aefb
mov esi, dword [0x49c768]
not esi
or ecx, esi
mov esi, dword [0x49dbc8]
add esi, ecx
mov dword [0x49dbc8], esi
mov eax, 0x68eb1f41
mov ecx, dword [esp + 0x50]
mov dword [ecx + 0x18], 0
mov edx, dword [0x497d58]
sub eax, edx
cmp eax, 0x9ddcdfd9
jge 0x436cba
mov eax, dword [0x4a6094]
inc eax
mov dword [0x4a6094], eax
mov ecx, dword [0x4a05c0]
or ecx, eax
mov dword [0x4a05c0], ecx
jmp 0x436cc9
mov eax, dword [0x4a86a4]
xor eax, 0x443a3323
mov dword [0x4a86a4], eax
mov eax, dword [esp + 0x50]
mov byte [eax + 0x1c], 0
mov ecx, dword [0x49ecb8]
add ecx, 0xe842812
mov dword [0x49ecb8], ecx
mov dword [eax + 0x28], 0
mov ecx, dword [0x4a84b0]
imul ecx, ecx, 0xbf0f84df
mov dword [0x4a84b0], ecx
mov ecx, esp
mov dword [ecx + 4], 4
mov dword [ecx], 0x811f
call fcn.00437eb0
mov dword [esp + 0x74], eax
mov eax, dword [0x4a3bb8]
mov dx, word [0x4abb4a]
movsx ecx, dx
sar ecx, 6
imul eax, ecx
xor eax, 0x69525e9d
cmp eax, 0x66be8622
jg 0x436d48
mov eax, dword [0x49e2a4]
add eax, 0x2c83576d
mov dword [0x49e2a4], eax
mov eax, dword [esp + 0x74]
mov ecx, dword [esp + 0x50]
add ecx, 0x38
mov edx, esp
mov dword [edx + 4], eax
mov dword [edx], ecx
call fcn.00455280
mov si, word [0x4b0218]
mov cx, si
inc ecx
mov di, cx
mov word [0x4b0218], di
movsx ecx, si
xor ecx, 0x95bfc278
cmp ecx, 0xacdc6111
mov dword [esp + 0x48], eax
je 0x436de2
mov eax, dword [0x499b44]
inc eax
mov dword [0x499b44], eax
xor eax, 0x6d43e0ab
mov ecx, dword [0x49e78c]
add ecx, 0x30222898
mov edx, dword [0x49d55c]
or ecx, edx
cmp eax, ecx
jne 0x436ddd
mov eax, 0x2c2e6735
mov ecx, dword [0x49ba20]
inc ecx
mov dword [0x49ba20], ecx
cmp eax, ecx
jne 0x436dd8
jmp 0x436dd8
jmp 0x436ddd
jmp 0x436de2
mov eax, esp
mov dword [eax + 4], 5
mov dword [eax], 0x3cc4
call fcn.00437eb0
mov dword [esp + 0x70], eax
mov cx, word [0x4aa908]
mov ax, cx
xor eax, 0x70e8
mov cx, ax
mov word [0x4aa908], cx
mov eax, dword [esp + 0x74]
mov edx, esp
mov dword [edx + 4], eax
mov dword [edx], 4
call fcn.0044b770
mov eax, dword [0x49f024]
and eax, 0x102
or eax, 0x6ce9
mov cx, word [0x4adfd0]
mov dx, cx
xor edx, eax
mov cx, dx
mov word [0x4adfd0], cx
mov eax, dword [esp + 0x70]
mov edx, dword [esp + 0x50]
add edx, 0x4c
mov esi, esp
mov dword [esi + 4], eax
mov dword [esi], edx
call fcn.00455280
mov edx, dword [0x4a7cec]
or edx, 0x88ed9549
mov dword [0x4a7cec], edx
mov edx, dword [esp + 0x70]
mov esi, esp
mov dword [esi + 4], edx
mov dword [esi], 5
mov dword [esp + 0x44], eax
call fcn.0044b770
mov eax, dword [0x49af3c]
sar eax, 7
cmp eax, 0xc8b9a40f
jg 0x436eea
mov eax, 0x6f1543e8
mov ecx, dword [0x498ee0]
imul ecx, ecx, 0xd7bab2e9
or ecx, 0x77598832
cmp eax, ecx
jle 0x436ee5
mov eax, dword [0x499b64]
inc eax
mov dword [0x499b64], eax
or eax, 0x8365
mov cx, word [0x4ae556]
mov dx, cx
sub edx, eax
mov cx, dx
mov word [0x4ae556], cx
jmp 0x436eea
mov eax, 0x4d503428
mov ecx, esp
mov dword [ecx], 0
mov dword [esp + 0x40], eax
call fcn.00450db0
mov ecx, dword [esp + 0x50]
mov dword [ecx + 0x20], eax
mov eax, dword [0x49e52c]
mov esi, dword [esp + 0x40]
cmp esi, eax
mov dword [esp + 0x3c], edx
jl 0x436f4c
mov eax, dword [0x49b4ec]
mov ecx, eax
inc ecx
mov dword [0x49b4ec], ecx
mov ecx, dword [0x4a8bb4]
shl ecx, 3
sub eax, ecx
mov ecx, dword [0x49fd1c]
lea eax, [ecx + eax - 0x5bea04ab]
mov dword [0x49fd1c], eax
jmp 0x436f72
mov eax, dword [0x4a9204]
mov ecx, eax
dec ecx
mov dword [0x4a9204], ecx
add eax, 0xf1c1c006
and eax, 0xa381a9de
mov ecx, dword [0x4a82f0]
or ecx, eax
mov dword [0x4a82f0], ecx
mov eax, dword [esp + 0x50]
mov ecx, dword [eax + 0x20]
shr ecx, 9
mov dword [eax + 0x20], ecx
mov ecx, dword [0x4a395c]
or ecx, 0xafbeccff
mov edx, dword [0x4a7470]
and edx, ecx
mov dword [0x4a7470], edx
mov ecx, dword [eax + 0x20]
add ecx, 0x200
mov dword [eax + 0x24], ecx
mov si, word [0x4aec6e]
movsx ecx, si
shr ecx, 8
add ecx, 0x868a528b
mov si, word [0x4b23c6]
mov dx, si
sub edx, ecx
mov si, dx
mov word [0x4b23c6], si
mov dword [esp + 0x6c], 0
mov ecx, dword [0x4982dc]
mov edx, dword [0x4a86f4]
xor edx, ecx
mov dword [0x4a86f4], edx
mov ecx, dword [0x497720]
sar ecx, 2
or ecx, 0x7377efbb
mov edx, dword [0x49a174]
xor edx, ecx
mov dword [0x49a174], edx
mov dword [esp + 0x64], 0
cmp dword [esp + 0x64], 0x28
je 0x437161
mov eax, dword [0x4a7f1c]
dec eax
mov dword [0x4a7f1c], eax
xor eax, 0x62209040
mov ecx, dword [0x4995d8]
or eax, ecx
or eax, 0x94db630e
mov dword [0x4995d8], eax
mov eax, dword [0x4975f0]
mov ecx, esp
mov edx, dword [esp + 0x50]
mov dword [ecx + 0xc], edx
mov dword [ecx + 0x14], 0
mov dword [ecx + 0x10], 0
mov dword [ecx + 8], 0x425370
mov dword [ecx + 4], 0
mov dword [ecx], 0
call eax
sub esp, 0x18
mov dword [esp + 0x68], eax
mov eax, dword [0x4a575c]
imul eax, eax, 0x2fd7442b
mov ecx, dword [0x49bf18]
or ecx, 0xc58f5e34
cmp eax, ecx
jne 0x4370a3
mov eax, dword [0x4a682c]
xor eax, 0x6a5ec48e
mov dword [0x4a682c], eax
cmp dword [esp + 0x68], 0
je 0x437139
mov eax, dword [0x4a649c]
mov ecx, eax
dec ecx
mov dword [0x4a649c], ecx
imul eax, eax, 0xdac2c62e
xor eax, 0x9890e686
mov ecx, dword [0x49b5dc]
sub ecx, eax
mov dword [0x49b5dc], ecx
mov eax, dword [esp + 0x6c]
inc eax
mov dword [esp + 0x6c], eax
mov dx, word [0x4ad46c]
mov ax, dx
add eax, 0xfcf7e7bf
mov dx, ax
mov word [0x4ad46c], dx
mov eax, dword [0x497600]
mov ecx, dword [esp + 0x68]
mov esi, esp
mov dword [esi], ecx
call eax
sub esp, 4
mov dx, word [0x4ab224]
mov cx, dx
add ecx, 0x367324c5
xor ecx, 0x154c
mov dx, word [0x4b28c8]
mov si, dx
or esi, ecx
mov dx, si
mov word [0x4b28c8], dx
mov dword [esp + 0x38], eax
mov ax, word [0x4b042e]
mov cx, ax
add ecx, 0x216adb9b
mov ax, cx
mov word [0x4b042e], ax
mov eax, dword [esp + 0x64]
add eax, 1
mov dword [esp + 0x64], eax
jmp 0x43700f
mov eax, dword [0x4a5410]
imul eax, eax, 0x3f4e97d7
mov dword [0x4a5410], eax
cmp dword [esp + 0x6c], 0
jle 0x4371c0
mov ax, word [0x4aac4e]
mov cx, ax
add ecx, 0x285281e0
mov ax, cx
mov word [0x4aac4e], ax
mov ecx, dword [esp + 0x50]
call fcn.0040e540
mov ecx, dword [0x49f0b8]
mov edx, ecx
inc edx
mov dword [0x49f0b8], edx
add ecx, 0x63749d4a
mov edx, dword [0x4a0448]
sub edx, ecx
mov dword [0x4a0448], edx
mov eax, 0x5446b933
mov ecx, dword [0x4a3618]
mov edx, dword [0x4a78c0]
and ecx, edx
and ecx, 0xd3d348e4
mov dword [0x4a78c0], ecx
mov ecx, dword [esp + 0x50]
add ecx, 0x38
mov edx, esp
mov dword [edx], ecx
mov dword [edx + 4], 0x14
mov dword [esp + 0x34], eax
call fcn.004238a0
mov si, word [0x4b2444]
movsx eax, si
sar eax, 7
mov ecx, dword [esp + 0x34]
cmp ecx, eax
je 0x43722b
mov ax, word [0x4ad912]
mov cx, ax
or ecx, 0xa1f
mov ax, cx
mov word [0x4ad912], ax
mov eax, 0x4564d766
mov ecx, dword [esp + 0x50]
add ecx, 0x4c
mov edx, esp
mov dword [edx], ecx
mov dword [edx + 4], 0x14
mov dword [esp + 0x30], eax
call fcn.004238a0
mov dword [0x49c41c], 0x7d5ef93a
mov eax, dword [0x49762c]
mov ecx, esp
mov edx, dword [esp + 0x50]
mov dword [ecx], edx
call eax
sub esp, 4
mov si, word [0x4ab748]
movsx eax, si
mov ecx, dword [0x4a2e70]
or eax, ecx
mov ecx, dword [esp + 0x30]
cmp ecx, eax
jl 0x4372b2
mov eax, 0xf09d40a1
mov ecx, dword [0x4a7bf8]
cmp eax, ecx
jle 0x4372ad
mov eax, dword [0x4a1c18]
add eax, eax
mov ecx, dword [0x49cb64]
and ecx, eax
mov dword [0x49cb64], ecx
jmp 0x4372b2
mov eax, 0xf000c0c8
mov ecx, dword [esp + 0x50]
mov edx, dword [ecx + 0x30]
mov esi, esp
mov dword [esi + 4], edx
mov dword [esi], 0xaf1
mov dword [esp + 0x2c], eax
call fcn.0044b770
mov di, word [0x4afbf8]
mov ax, di
imul eax, eax, 0xa409a13e
mov di, ax
mov word [0x4afbf8], di
mov eax, dword [esp + 0x50]
mov ecx, dword [eax + 0x34]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 0x31e
call fcn.0044b770
mov eax, dword [0x49ce00]
add eax, 0xfa28d57e
mov dword [0x49ce00], eax
mov dword [esp + 0x60], 0
mov eax, dword [0x4a8400]
mov di, word [0x4ad330]
movsx ecx, di
imul eax, ecx
and eax, 0x278b8dc8
mov ecx, dword [esp + 0x2c]
cmp ecx, eax
jg 0x4373ab
mov eax, 0xadb01bbb
mov ecx, dword [0x49e978]
cmp eax, ecx
jne 0x43737a
mov eax, 0xc662b117
mov ecx, dword [0x4a7200]
dec ecx
mov dword [0x4a7200], ecx
add ecx, 0x3d208039
cmp eax, ecx
jge 0x437375
jmp 0x437375
jmp 0x4373a6
mov eax, 0x5cc13bc5
mov cx, word [0x4b01ae]
movsx edx, cx
shl edx, 7
mov esi, dword [0x49ff3c]
and edx, esi
cmp eax, edx
jne 0x4373a1
jmp 0x4373a1
jmp 0x4373a6
jmp 0x4373ab
mov eax, dword [esp + 0x50]
add eax, 0x80
mov ecx, eax
call fcn.00414bd0
test al, 1
jne 0x437553
mov eax, dword [0x4a39ac]
xor eax, 0xffffffff
or eax, 0x21a6b985
cmp eax, 0x55ed2bc0
jg 0x4373f3
mov ax, word [0x4b22ee]
mov cx, ax
imul ecx, ecx, 0xf9fff165
mov ax, cx
mov word [0x4b22ee], ax
call fcn.004043c0
mov dword [esp + 0x5c], eax
mov cx, word [0x4aaac4]
mov ax, cx
inc eax
mov cx, ax
mov word [0x4aaac4], cx
movsx eax, cx
add eax, 0x4976327d
mov edx, dword [0x4a6954]
imul edx, eax
mov dword [0x4a6954], edx
mov eax, dword [esp + 0x50]
sub eax, 0xffffff80
mov ecx, eax
mov dword [esp + 0x28], eax
call fcn.0040f900
mov ecx, dword [esp + 0x5c]
xor edx, edx
mov dword [esp + 0x24], eax
mov eax, ecx
mov ecx, dword [esp + 0x24]
div ecx
mov dword [esp + 0x5c], edx
mov si, word [0x4adee6]
mov ax, si
or eax, 0xe57e
mov si, ax
mov word [0x4adee6], si
mov eax, dword [esp + 0x5c]
mov edx, esp
mov dword [edx], eax
mov ecx, dword [esp + 0x28]
call fcn.00417c40
sub esp, 4
mov ecx, eax
call fcn.00423bf0
mov ecx, dword [esp + 0x80]
mov edx, esp
mov dword [edx + 4], eax
mov dword [edx], ecx
call fcn.00455280
mov si, word [0x4ab7dc]
mov cx, si
xor ecx, 0xfb8e
mov si, cx
mov word [0x4ab7dc], si
mov ecx, dword [esp + 0x7c]
mov edx, dword [esp + 0x5c]
mov edi, esp
mov dword [edi], edx
mov edx, dword [esp + 0x28]
mov dword [esp + 0x20], ecx
mov ecx, edx
mov dword [esp + 0x1c], eax
call fcn.00417c40
sub esp, 4
add eax, 0x14
mov ecx, esp
mov dword [ecx], eax
mov ecx, dword [esp + 0x20]
call fcn.004363a0
sub esp, 4
mov ecx, dword [0x4a7298]
imul ecx, ecx, 0x3f59ae49
mov dword [0x4a7298], ecx
mov dword [esp + 0x60], 1
mov ecx, dword [0x4a6e98]
mov edx, dword [0x4a267c]
dec edx
mov dword [0x4a267c], edx
and edx, 0x89f945fd
cmp ecx, edx
mov dword [esp + 0x18], eax
jle 0x43754e
mov eax, dword [0x49998c]
or eax, 0xda2cc87
cmp eax, 0xd0ebebda
jl 0x437549
mov eax, dword [0x49ea3c]
add eax, 0x19eaf436
mov dword [0x49ea3c], eax
jmp 0x43754e
jmp 0x437553
mov eax, dword [0x4a87f8]
add eax, 0xd23a290d
mov dword [0x4a87f8], eax
mov eax, dword [esp + 0x60]
add esp, 0x84
pop esi
pop edi
ret 8