Function at 0x10002ff5
Capabilities:
Check os version
Resolve function by parsing pe exports

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x104
mov eax, dword [0x1002d54c]
mov esi, 0xfffffffe
mov ecx, 0xa3717d30
lea ebx, [eax - 1]
imul ebx, eax
xor edx, edx
dec edx
mov ebp, ebx
xor ebp, edx
mov edi, ebp
mov dword [esp + 4], ebp
and edi, esi
xor eax, eax
mov esi, ebx
inc eax
mov dword [esp + 0x28], edi
xor esi, eax
or esi, edi
mov edi, 0x8c9791d9
mov eax, esi
mov dword [esp + 0x18], esi
xor eax, edx
mov edx, esi
mov esi, ebx
mov dword [esp + 0x24], eax
and eax, 0x5c8e82cf
and edx, ecx
mov dword [esp + 0x1c], esi
or edx, eax
mov eax, dword [0x1002d548]
xor edx, ecx
mov edx, ebx
sete byte [esp + 0xf]
sete byte [esp + 0x38]
setne byte [esp + 0x3c]
cmp eax, 9
setg ch
cmp eax, 0xa
mov eax, ebp
setl cl
setl byte [esp + 0x10]
and eax, 0x8fdb276e
and edx, 0x7024d891
mov byte [esp], ch
or edx, eax
mov byte [esp + 8], cl
xor edx, 0x7024d890
mov eax, edx
xor eax, ebp
test eax, edx
mov ah, ch
sete al
setne dl
or ah, dl
and al, ch
and dl, cl
mov ecx, 0x8c9791d9
or dl, al
mov al, ah
xor al, dl
test dl, dl
mov edx, 0x725cd156
cmovne ecx, edx
test ah, ah
cmovne ecx, edi
test al, al
mov eax, ebp
cmove ecx, edx
mov edx, ebx
and eax, 0xbaaf60ff
and edx, 0x45509f00
mov dword [esp + 0xc8], ecx
mov cl, byte [esp]
or edx, eax
xor edx, 0xbaaf60fe
or edx, ebp
xor eax, eax
dec eax
cmp edx, eax
mov edx, ecx
setne al
or dl, al
xor al, cl
mov ecx, 0x2b18bf95
mov ah, dl
xor ah, al
cmove edi, ecx
test al, al
mov eax, ebp
cmove ecx, edi
test dl, dl
mov edx, 0xa0ad788e
cmovne ecx, edi
mov edi, ebx
and eax, 0x5f528771
mov ebx, 0x7a0706af
and edi, edx
mov dword [esp + 0xc4], ecx
mov ch, byte [esp]
mov cl, 1
or edi, eax
mov eax, 0xfffffffe
xor edx, edi
xor edi, 0x5f528770
and edx, eax
or edi, edx
xor eax, eax
mov dh, ch
dec eax
cmp edi, eax
mov ah, byte [esp + 8]
mov edi, 0x33b8ac81
sete al
setne dl
and dh, al
and dl, ah
or dh, dl
mov dl, ah
xor dl, al
or al, ah
xor al, cl
or al, dl
mov dl, al
xor dl, dh
test al, al
cmovne ebx, edi
test dh, dh
cmove ebx, edi
test dl, dl
mov edx, 0x7a0706af
mov edi, 0xc7651da
cmove ebx, edx
mov edx, ebp
mov dword [esp + 0xd4], ebx
mov ebx, esi
and edx, 0xf389ae25
and ebx, edi
or ebx, edx
mov edx, 0xfffffffe
xor edi, ebx
xor ebx, 0xf389ae24
and edi, edx
or ebx, edi
xor edi, edi
mov edx, ebx
dec edi
xor edx, edi
mov edi, 0xb5bdf57c
and edx, 0x4a420a83
and ebx, edi
or ebx, edx
xor ebx, edi
mov bl, ch
mov edi, 0xfe6ebc41
mov bh, ah
sete dl
setne dh
or bl, dh
and dl, ch
and dh, ah
mov ecx, 0x33b8ac81
mov eax, 0x33b8ac81
or dh, dl
mov dl, bl
xor dl, dh
test dh, dh
cmovne ecx, edi
test bl, bl
mov bl, byte [esp]
cmovne ecx, eax
test dl, dl
mov eax, ebp
mov edx, 0xe9599f1c
mov ebp, esi
cmove ecx, edi
mov edi, esi
and eax, 0x16a660e3
and edi, edx
mov dword [esp + 0xc0], ecx
mov ecx, 0xfffffffe
or edi, eax
xor edx, edi
xor edi, 0x8440c3
mov eax, edx
and edi, 0x489cd3db
and edx, ecx
mov ecx, 0x7fe196ab
and eax, 0xb7632c24
or eax, edi
mov edi, 0x51a23231
xor eax, 0xb7632c25
or edx, eax
xor esi, esi
mov eax, edx
dec esi
and edx, edi
xor eax, esi
and eax, 0xae5dcdce
or edx, eax
mov al, 1
mov ah, bh
xor edx, edi
mov dh, bh
mov edi, 0x93d8ce17
sete dl
xor dh, dl
or dl, bh
xor dl, al
or dl, dh
mov al, dl
xor al, dh
cmovne edi, ecx
test dl, dl
mov ecx, 0x93d8ce17
mov dl, bl
cmovne ecx, edi
test dh, dh
cmove ecx, edi
cmp dword [esp + 0x18], esi
mov edi, 0x2667e3ab
mov esi, 0x513a88ae
mov dword [esp + 0xbc], ecx
mov ecx, 0x5ef3d7d4
setne bh
sete dh
and dl, bh
xor bl, bh
xor dh, ah
or bl, dl
mov byte [esp + 0x50], dh
mov dl, bl
xor dl, dh
cmovne edi, ecx
xor ecx, ecx
xor bh, ah
inc ecx
mov byte [esp + 0x34], bh
mov dword [esp + 0x4c], edi
and ebp, ecx
mov ecx, 0xdc51f62c
add ebp, dword [esp + 0x28]
mov edx, ebp
xor edx, dword [esp + 4]
xor bh, bl
cmovne esi, ecx
test bl, bl
mov ebx, 0x2667e3ab
cmovne ebx, edi
cmovne ecx, esi
mov edi, dword [esp + 4]
mov dword [esp + 0x30], esi
mov esi, dword [esp + 0x1c]
mov dword [esp + 0x58], ecx
mov dword [esp + 0x54], ebx
test edx, ebp
mov dh, ah
mov dl, ah
mov ebp, 0xa2903fa2
sete cl
setne byte [esp + 0x44]
xor dh, cl
mov byte [esp + 0x48], cl
mov cl, 0xff
mov bl, dh
xor bl, cl
mov ecx, 0x66834696
and bl, ah
mov eax, 0x7fe196ab
mov bh, bl
xor bh, dh
cmovne eax, ecx
test dh, dh
cmove ecx, eax
test bl, bl
mov ebx, edi
cmove ecx, eax
mov eax, dword [esp + 0x1c]
and ebx, 0x84e6b227
mov dword [esp + 0xb8], ecx
and eax, 0x7b194dd8
or ebx, eax
xor ebx, 0x84e6b226
or ebx, dword [esp + 0x28]
xor ecx, ecx
dec ecx
mov eax, ebx
and ebx, ebp
xor eax, ecx
mov cl, byte [esp]
and eax, 0x5d6fc05d
or ebx, eax
xor ebx, ebp
mov ebp, 0x865badad
mov ebx, edi
setne dh
sete al
and al, cl
and dl, dh
or dl, al
mov eax, ecx
and al, dh
xor dh, cl
mov ecx, 0x357aa22e
or dh, al
mov al, dh
xor al, dl
mov eax, 0x865badad
cmovne ebp, ecx
test dh, dh
cmovne eax, ebp
test dl, dl
cmove eax, ebp
mov ebp, 0x1dd711a4
and ebx, 0xe228ee5b
mov dword [esp + 0xd0], eax
mov eax, esi
and eax, ebp
or eax, ebx
xor ebp, eax
xor eax, 0x22080800
mov ebx, ebp
and eax, 0x27880820
and ebx, 0xd877f7df
or ebx, eax
mov eax, 0xfffffffe
xor ebx, 0xd877f7de
and ebp, eax
or ebp, ebx
xor edx, edx
mov ebx, 0x4bcca135
mov eax, ebp
dec edx
and ebp, ebx
xor eax, edx
mov dl, byte [esp]
and eax, 0xb4335eca
or ebp, eax
xor ebp, ebx
mov ebx, 0x3f9cd23f
mov ebp, esi
setne al
mov ah, dl
xor ah, al
and al, dl
or al, ah
mov dh, al
xor dh, ah
mov edx, 0xfffffffe
cmove ecx, ebx
test al, al
cmovne ebx, ecx
test ah, ah
mov eax, dword [esp + 0x54]
cmove ebx, ecx
cmp byte [esp + 0x50], 0
mov ecx, 0x9f8998fe
mov dword [esp + 0xcc], ebx
mov ebx, edi
cmove eax, dword [esp + 0x4c]
mov dword [esp + 0x54], eax
mov eax, edi
mov edi, esi
mov esi, 0x5ef3d7d4
and eax, 0x60766701
and edi, ecx
or edi, eax
xor ecx, edi
xor edi, 0x40422701
mov eax, ecx
and edi, 0x58cb3769
and ecx, edx
and eax, 0xa734c896
or eax, edi
mov edi, 0x1a279af4
xor eax, 0xa734c897
or ecx, eax
xor edx, edx
mov eax, ecx
dec edx
and ecx, edi
xor eax, edx
mov dl, 0xff
and eax, 0xe5d8650b
or ecx, eax
xor ecx, edi
mov cl, byte [esp + 8]
mov edi, ebx
sete al
xor al, cl
xor dl, al
and dl, cl
mov ecx, eax
xor cl, dl
test al, al
mov eax, 0x8f95d364
cmovne esi, eax
test dl, dl
mov edx, 0x5ef3d7d4
cmove esi, edx
test cl, cl
mov ecx, ebp
cmovne esi, eax
mov eax, ebx
and ecx, 0x979c25d6
and eax, 0x6863da29
mov dword [esp + 0xb4], esi
mov esi, 0x5cf8a23c
or ecx, eax
xor ecx, 0x979c25d7
mov eax, ecx
xor eax, ebx
mov bl, byte [esp]
mov bh, byte [esp + 8]
test eax, ecx
setne al
sete cl
mov edx, ebx
xor cl, bh
and dl, al
xor al, bl
or al, dl
mov edx, eax
xor dl, cl
test al, al
mov eax, 0x7362afd
cmovne esi, eax
test cl, cl
mov ecx, 0x5cf8a23c
cmove esi, eax
test dl, dl
mov edx, ebp
cmove esi, ecx
mov ecx, edi
and edx, 0xa6af3b5a
and ecx, 0x5950c4a5
mov dword [esp + 0xb0], esi
mov esi, 0x7362afd
or edx, ecx
xor edx, 0xa6af3b5b
mov ecx, edx
xor ecx, edi
mov edi, 0xfc403d13
test ecx, edx
mov edx, ebx
setne cl
or dl, cl
xor cl, bl
mov ch, dl
xor ch, cl
test cl, cl
cmovne esi, edi
test dl, dl
mov edx, dword [esp + 0x18]
cmovne esi, eax
mov eax, dword [esp + 0x24]
test ch, ch
mov ecx, 0x38d25666
cmove esi, edi
mov edi, 0x8f1bc4c1
mov dword [esp + 0x50], esi
mov esi, 0xe9f6a928
and edx, ecx
and eax, 0xc72da999
or edx, eax
mov ah, bh
xor edx, ecx
mov dl, bh
sete al
setne cl
xor dl, cl
and al, bl
and cl, bh
or cl, al
and dl, bh
mov eax, 0xe9f6a928
mov ch, cl
xor ch, dl
test cl, cl
cmovne esi, edi
test dl, dl
cmove esi, eax
mov eax, dword [esp + 4]
test ch, ch
mov ecx, ebp
cmovne esi, edi
and ecx, 0xc56cd283
mov edi, 0xd4e9adf2
mov dword [esp + 0x4c], esi
mov esi, 0xe9f6a928
mov edx, eax
and edx, 0x3a932d7c
or edx, ecx
xor edx, 0x3a932d7d
or edx, dword [esp + 0x28]
xor ebp, ebp
dec ebp
mov ecx, edx
and edx, edi
xor ecx, ebp
mov ebp, eax
and ecx, 0x2b16520d
or edx, ecx
mov ch, bl
xor edx, edi
mov edi, 0xe9f6a928
sete cl
setne dl
or ch, dl
and cl, bl
and dl, bh
or dl, cl
mov cl, dl
xor cl, ch
test dl, dl
mov edx, 0x25810f58
cmovne esi, edx
test ch, ch
cmovne esi, edi
test cl, cl
mov ecx, 0x4acfc9a0
mov edi, 0x27fb2e58
cmove esi, edx
and eax, 0xb530365f
mov dword [esp + 0x28], esi
mov esi, dword [esp + 0x1c]
mov edx, esi
and edx, ecx
or edx, eax
mov eax, 0xfffffffe
xor ecx, edx
xor edx, 0xb530365e
and ecx, eax
or edx, ecx
xor ecx, ecx
mov eax, edx
dec ecx
xor eax, ecx
mov ecx, 0x404991e6
and eax, 0xbfb66e19
and edx, ecx
or edx, eax
mov ah, 1
xor edx, ecx
mov dl, bh
mov ch, bh
sete cl
setne al
or dl, cl
xor al, bl
xor cl, bh
mov ebx, ebp
xor dl, ah
or dl, al
mov eax, edx
xor al, cl
mov eax, 0xb40339f8
cmovne edi, eax
test dl, dl
mov edx, 0x27fb2e58
cmovne edx, edi
test cl, cl
mov ecx, ebp
mov ebp, esi
cmove edx, edi
and ecx, 0x87b3fa08
mov edi, ebx
mov dword [esp + 0xac], edx
mov edx, esi
mov esi, 0xe8dd9459
and edx, 0x784c05f7
or edx, ecx
xor edx, 0x784c05f6
mov ecx, edx
xor ecx, ebx
mov bh, byte [esp + 8]
mov bl, byte [esp]
test ecx, edx
setne cl
mov dl, bh
mov ch, bl
xor dl, cl
and ch, cl
xor cl, bl
or cl, ch
mov ch, dl
xor ch, cl
cmovne eax, esi
test cl, cl
mov ecx, 0x6ccd22cc
cmovne esi, eax
test dl, dl
mov edx, ebp
cmovne esi, eax
mov eax, edi
and edx, ecx
mov edi, 0xe2730b90
and eax, 0x9332dd33
mov dword [esp + 0xa8], esi
mov esi, 0x98e901c5
or edx, eax
mov eax, 0xfffffffe
xor ecx, edx
xor edx, 0x9332dd32
and ecx, eax
or edx, ecx
xor eax, eax
dec eax
xor eax, edx
and eax, 0xa1d33cf7
mov ecx, eax
mov eax, 0x5e2cc308
and edx, eax
or edx, ecx
xor edx, eax
mov edx, ebx
mov dh, bh
mov dh, byte [esp + 0x48]
sete al
setne cl
or dl, cl
and al, bl
and cl, bh
or cl, al
mov eax, edx
xor al, cl
mov eax, 0x98e901c5
cmovne edi, eax
test cl, cl
mov ecx, 0xe2730b90
cmove ecx, edi
test dl, dl
mov dl, bh
cmovne ecx, edi
and dh, bl
mov edi, 0x4117b264
mov dword [esp + 0xa4], ecx
mov ch, byte [esp + 0x44]
mov cl, bh
xor cl, ch
and ch, bh
or ch, dh
and cl, bh
mov dh, bh
mov ebx, dword [esp + 4]
mov dl, cl
xor dl, ch
test ch, ch
cmovne esi, edi
test cl, cl
mov ecx, ebp
cmove esi, eax
test dl, dl
mov eax, ebx
mov ebp, ebx
mov dl, dh
cmovne esi, edi
and eax, 0x5d6cdac9
and ecx, 0xa2932536
mov edi, 0x1ea61fab
or ecx, eax
mov dword [esp + 0x48], esi
mov esi, 0x2206ef69
xor ecx, 0xa2932537
mov eax, ecx
xor eax, ebx
mov bh, byte [esp]
mov bl, dh
test eax, ecx
setne cl
sete al
xor dl, cl
and cl, dh
and al, bh
and dl, dh
or cl, al
mov eax, edx
xor al, cl
mov eax, 0x1ea61fab
cmovne eax, esi
test cl, cl
mov ecx, dword [esp + 0x24]
cmove esi, eax
test dl, dl
mov edx, dword [esp + 0x18]
cmove esi, eax
mov eax, 0x43eea586
mov dword [esp + 0x44], esi
mov esi, 0x513a88ae
and ecx, 0xbc115a79
and edx, eax
or edx, ecx
xor edx, eax
setne cl
sete al
or cl, bh
xor al, bl
mov edx, ecx
xor dl, al
mov edx, 0x35f489af
cmove edi, edx
test al, al
mov eax, ebp
cmove edx, edi
test cl, cl
mov ecx, dword [esp + 0x1c]
cmovne edx, edi
and eax, 0x7b4d8ff6
mov edi, 0x513a88ae
and ecx, 0x84b27009
or ecx, eax
mov ah, bh
xor ecx, 0x84b27008
xor ebp, ecx
test ebp, ecx
mov ch, bh
mov ebp, 0x5979f0be
sete al
setne cl
or ah, cl
and al, bh
and cl, bl
or cl, al
mov al, cl
xor al, ah
test cl, cl
mov ecx, 0xad7a8042
cmovne edi, ecx
test ah, ah
cmovne edi, esi
test al, al
mov eax, dword [esp + 0x58]
mov esi, 0xe3ab2d2
cmove edi, ecx
cmp byte [esp + 0x34], 0
mov ch, byte [esp + 0x38]
mov cl, bl
mov dword [esp + 0x1c], edi
mov edi, 0xb384804f
cmovne eax, dword [esp + 0x30]
and ch, bh
mov dword [esp + 0x58], eax
mov al, byte [esp + 0x3c]
xor cl, al
and cl, bl
and bl, al
mov eax, 0xb384804f
or bl, ch
mov ch, cl
xor ch, bl
test bl, bl
cmovne eax, esi
test cl, cl
cmove eax, edi
mov edi, dword [esp + 0x118]
test ch, ch
mov ecx, 0x1000a3e5
cmovne eax, esi
mov esi, ecx
cmp ecx, 0x1ea61faa
jg 0x1000395e
cmp esi, 0xc8cf7883
jg 0x100039cc
cmp esi, 0xb384804e
jg 0x10003a76
cmp esi, 0x9821a40b
jg 0x10003bf7
cmp esi, 0x8f1bc4c0
jle 0x10003e3f
cmp esi, 0x8f1bc4c1
je 0x1000417d
cmp esi, 0x8f95d364
je 0x10004192
cmp esi, 0x93d8ce17
mov ecx, esi
jne 0x100038ee
cmp byte [esp + 0x16], 0
mov ecx, 0xd12aae92
mov esi, 0xc53afb69
cmovne ecx, esi
jmp 0x100038ee
cmp esi, 0x5247a0e3
jg 0x10003a22
cmp esi, 0x33b8ac80
jg 0x10003aca
cmp esi, 0x26c5e100
jg 0x10003c32
cmp esi, 0x2206ef68
jle 0x10003e63
cmp esi, 0x2206ef69
je 0x100041b0
mov ecx, dword [esp + 0x4c]
cmp esi, 0x25810f58
je 0x100038ee
cmp esi, 0x2667e3ab
mov ecx, esi
jne 0x100038ee
cmp byte [esp + 0x14], 0
mov ecx, 0x9821a40c
mov esi, 0x7e83c57d
jmp 0x10004213
cmp esi, 0xfb4ad4a3
jg 0x10003b2a
cmp esi, 0xdc51f62b
jg 0x10003c70
cmp esi, 0xd12aae91
jle 0x10003e94
cmp esi, 0xd12aae92
je 0x100041ba
cmp esi, 0xd14c9e21
je 0x100041d7
cmp esi, 0xd5f3b28a
mov ecx, esi
jne 0x100038ee
mov ecx, dword [esp + 0xc0]
jmp 0x100038ee
cmp esi, 0x6870fe9c
jg 0x10003b88
cmp esi, 0x5ef3d7d3
jg 0x10003cbc
cmp esi, 0x5979f0bd
jle 0x10003ed8
cmp esi, 0x5979f0be
je 0x100041f6
cmp esi, 0x5b6b7909
je 0x10004204
cmp esi, 0x5cf8a23c
mov ecx, esi
jne 0x100038ee
mov ecx, 0x6ecdbb5b
jmp 0x100038ee
cmp esi, 0xba21fbcc
jg 0x10003d09
cmp esi, 0xb40fba88
jle 0x10003f04
cmp esi, 0xb40fba89
je 0x10004224
cmp esi, 0xb71df841
je 0x1000423e
cmp esi, 0xb80f4efa
mov ecx, esi
jne 0x100038ee
mov ecx, dword [esp + 0xe4]
mov word [esp + 0x6a], cx
mov ecx, 0x26c5e101
jmp 0x100038ee
cmp esi, 0x3f9cd23e
jg 0x10003d59
cmp esi, 0x35f489ae
jle 0x10003f30
cmp esi, 0x35f489af
je 0x10004254
cmp esi, 0x377147f7
je 0x1000426b
cmp esi, 0x3e7a5424
mov ecx, esi
jne 0x100038ee
mov ecx, dword [esp + 0x84]
mov ecx, dword [ecx + 4]
mov esi, dword [esp + 0x20]
lea ecx, [ecx + esi*2]
mov dword [esp + 0x88], ecx
mov ecx, 0xbd41be1f
jmp 0x100038ee
cmp esi, 0xe3ab2d1
jg 0x10003d9c
cmp esi, 0xfe6ebc40
jle 0x10003f54
mov ecx, dword [esp + 0xd4]
cmp esi, 0xfe6ebc41
je 0x100038ee
mov ecx, dword [esp + 0x28]
cmp esi, 0x5f05bd
je 0x100038ee
cmp esi, 0x7362afd
mov ecx, esi
jne 0x100038ee
mov ecx, dword [esp + 0x88]
mov ecx, dword [esp + 0x20]
mov ecx, 0xfc403d13
jmp 0x100038ee
cmp esi, 0x771747e8
jg 0x10003df4
cmp esi, 0x725cd155
jg 0x10003e2c
cmp esi, 0x6870fe9d
je 0x10004281
cmp esi, 0x6e2eb183
je 0x100042a0
cmp esi, 0x6ecdbb5b
mov ecx, esi
jne 0x100038ee
mov ecx, dword [esp + 0xdc]
mov esi, 0xb71df841
movzx ecx, word [ecx]
mov word [esp + 2], cx
movzx ecx, word [esp + 0xc]
mov dword [esp + 0x60], ecx
mov ecx, dword [esp + 0x60]
cmp ecx, 0x40
mov ecx, 0x6e2eb183
cmovg ecx, esi
jmp 0x100043af
cmp esi, 0xa0bef26c
jle 0x10003f97
cmp esi, 0xa0bef26d
je 0x100042b6
cmp esi, 0xad7a8042
je 0x100042c8
cmp esi, 0xaffe1dc3
mov ecx, esi
jne 0x100038ee
mov ecx, dword [esp + 0x58]
jmp 0x100038ee
cmp esi, 0x2aa01d9f
jle 0x10003fbf
cmp esi, 0x2aa01da0
je 0x100042d2
cmp esi, 0x2acc03a1
je 0x100042ea
cmp esi, 0x2b18bf95
mov ecx, esi
jne 0x100038ee
mov ecx, dword [esp + 0xc8]
jmp 0x100038ee
cmp esi, 0xe8dd9458
jle 0x10003ff7
cmp esi, 0xe8dd9459
je 0x1000430a
cmp esi, 0xe9f6a928
je 0x1000433b
cmp esi, 0xf377f7e7
mov ecx, esi
jne 0x100038ee
mov ecx, dword [esp + 0xec]
mov ecx, dword [ecx]
mov dword [esp + 0xf0], ecx
mov ecx, 0x1e9f4eeb
jmp 0x100038ee
cmp esi, 0x60a5b100
jle 0x1000402a
cmp esi, 0x60a5b101
je 0x10004345
cmp esi, 0x6377b176
je 0x1000435c
cmp esi, 0x66834696
mov ecx, esi
jne 0x100038ee
movzx ecx, word [esp + 0x2c]
cmp cx, word [esp + 0x2e]
mov ecx, dword [esp + 0xbc]
setne byte [esp + 0x16]
jmp 0x100038ee
cmp esi, 0xbd41be1e
jle 0x1000405a
mov ecx, dword [esp + 0x50]
cmp esi, 0xbd41be1f
je 0x100038ee
cmp esi, 0xc0cb50ad
je 0x10004371
cmp esi, 0xc53afb69
mov ecx, esi
jne 0x100038ee
mov ecx, 0xba21fbcd
mov dword [esp + 0x78], 0
mov dword [esp + 0x34], 4
jmp 0x100038ee
cmp esi, 0x44cb6f63
jle 0x100040a4
cmp esi, 0x44cb6f64
je 0x10004385
cmp esi, 0x4526abf7
je 0x1000439d
cmp esi, 0x513a88ae
mov ecx, esi
jne 0x100038ee
mov ecx, dword fs:[0x30]
mov ecx, 0xdc51f62c
jmp 0x100038ee
cmp esi, 0x1a4b72d7
jle 0x100040dc
cmp esi, 0x1a4b72d8
mov ecx, edx
je 0x100038ee
cmp esi, 0x1e401b38
je 0x100043be
cmp esi, 0x1e9f4eeb
mov ecx, esi
jne 0x100038ee
mov ecx, dword [esp + 0xf0]
mov dword [esp + 0x3c], ecx
mov ecx, 0x1e401b38
mov esi, dword [esp + 0x40]
mov dword [esp + 0x18], esi
xor esi, esi
inc esi
mov dword [esp + 0x38], esi
jmp 0x100038ee
cmp esi, 0x7e83c57c
jg 0x1000414f
cmp esi, 0x771747e9
je 0x100043f6
cmp esi, 0x7a0706af
mov ecx, esi
jne 0x100038ee
mov ecx, 0xa0bef26d
mov dword [esp + 0x24], 0
jmp 0x100038ee
cmp esi, 0x725cd156
mov ecx, esi
je 0x10004526
jmp 0x100038ee
cmp esi, 0x865badad
je 0x1000441e
cmp esi, 0x8c9791d9
mov ecx, esi
jne 0x100038ee
mov ecx, 0x2b18bf95
jmp 0x100038ee
cmp esi, 0x1ea61fab
je 0x10004431
cmp esi, 0x20079e93
mov ecx, esi
jne 0x100038ee
cmp dword [esp + 0x30], 0
mov ecx, 0xfb4ad4a4
mov esi, 0x6377b176
cmove ecx, esi
jmp 0x100038ee
cmp esi, 0xc8cf7884
je 0x1000443f
cmp esi, 0xcb73738c
mov ecx, esi
jne 0x100038ee
mov ecx, dword [esp + 0xd8]
mov ecx, dword [ecx]
add ecx, 0x14
mov dword [esp + 0x80], ecx
mov ecx, dword [esp + 0x80]
mov ecx, dword [ecx]
mov dword [esp + 0x70], ecx
mov ecx, 0x6870fe9d
jmp 0x100038ee
cmp esi, 0x5247a0e4
je 0x1000445e
cmp esi, 0x569b20a5
mov ecx, esi
jne 0x100038ee
mov ecx, 0x60a5b101
mov dword [esp + 8], 0
jmp 0x100038ee
cmp esi, 0xb384804f
je 0x10004475
cmp esi, 0xb40339f8
mov ecx, esi
jne 0x100038ee
mov ecx, dword [esp + 0x5c]
mov ecx, dword [esp + 0x20]
mov ecx, 0xe8dd9459
jmp 0x100038ee
cmp esi, 0x33b8ac81
je 0x1000447f
cmp esi, 0x357aa22e
mov ecx, esi
jne 0x100038ee
mov ecx, 0x3f9cd23f
jmp 0x100038ee
cmp esi, 0xfb4ad4a4
je 0x10004489
cmp esi, 0xfc403d13
mov ecx, esi
jne 0x100038ee
mov ecx, dword [esp + 0x88]
movzx ecx, word [ecx]
mov word [esp + 0xc], cx
mov ecx, dword [esp + 0x20]
lea ecx, [edi + ecx*2]
mov dword [esp + 0xdc], ecx
mov ecx, dword [esp + 0xb0]
jmp 0x100038ee
cmp esi, 0x9821a40c
je 0x100044a1
cmp esi, 0x98e901c5
mov ecx, esi
jne 0x100038ee
mov ecx, dword [esp + 0x40]
mov ecx, 0x4117b264
jmp 0x100038ee
mov ecx, dword [esp + 0xcc]
cmp esi, 0x26c5e101
je 0x100038ee
cmp esi, 0x27fb2e58
mov ecx, esi
jne 0x100038ee
cmp byte [esp + 0x12], 0
mov ecx, 0x5f05bd
mov esi, 0x3e7a5424
cmovne ecx, esi
jmp 0x100038ee
cmp esi, 0xdc51f62c
je 0x100044b6
cmp esi, 0xe2730b90
mov ecx, esi
jne 0x100038ee
xor esi, esi
mov ecx, 0xc8cf7884
mov dword [esp + 0x74], 0
inc esi
mov dword [esp + 0x6c], esi
jmp 0x100038ee
cmp esi, 0x5ef3d7d4
je 0x100044ca
cmp esi, 0x5f9beef4
mov ecx, esi
jne 0x100038ee
mov ecx, dword [esp + 0x20]
inc ecx
mov dword [esp + 0xe8], ecx
mov ecx, 0x2acc03a1
jmp 0x100038ee
cmp esi, 0xba21fbcd
je 0x100044d9
cmp esi, 0xbc3b3e0e
mov ecx, esi
jne 0x100038ee
cmp byte [esp + 0x17], 0
mov ecx, 0xd5f3b28a
mov esi, 0x6870fe9d
cmovne ecx, esi
mov esi, dword [esp + 0x98]
mov dword [esp + 0x9c], esi
mov esi, dword [esp + 0x94]
mov dword [esp + 0x70], esi
jmp 0x100038ee
mov ecx, dword [esp + 0xd0]
cmp esi, 0x3f9cd23f
je 0x100038ee
cmp esi, 0x4117b264
mov ecx, esi
jne 0x100038ee
mov ecx, dword [esp + 0x40]
add ecx, 0xfffffff8
mov dword [esp + 0x5c], ecx
mov ecx, dword [esp + 0xa4]
jmp 0x100038ee
cmp esi, 0xe3ab2d2
je 0x10004506
cmp esi, 0x1000a3e5
mov ecx, esi
jne 0x100038ee
mov cl, byte [esp + 0xf]
mov ch, byte [esp + 0x10]
mov esi, eax
mov al, 1
mov dword [esp + 0xa0], edx
mov edx, 0x5979f0be
mov ebx, ecx
mov bh, cl
xor bl, al
and bl, ch
xor ch, al
xor bh, ch
and ch, cl
or ch, bl
and bh, cl
mov bl, ch
xor bl, bh
test ch, al
mov ecx, 0xb384804f
cmovne ecx, edx
mov edx, edi
test bh, al
mov edi, 0xb384804f
cmove ecx, edi
mov edi, edx
mov edx, dword [esp + 0xa0]
test bl, al
mov eax, esi
cmovne ecx, ebp
jmp 0x100038ee
cmp esi, 0x7e83c57d
je 0x10004510
cmp esi, 0x7fe196ab
mov ecx, esi
jne 0x100038ee
movzx ecx, word [esp + 0x2c]
movzx ecx, word [esp + 0x2e]
mov ecx, 0x66834696
jmp 0x100038ee
mov esi, dword [esp + 0x8c]
mov ecx, 0x20079e93
mov dword [esp + 0x30], esi
jmp 0x100038ee
movzx ecx, word [esp + 2]
mov dword [esp + 0x64], ecx
mov ecx, dword [esp + 0x64]
cmp ecx, 0x40
mov ecx, dword [esp + 0x54]
setg byte [esp + 0x14]
jmp 0x100038ee
mov ecx, 0xcb73738c
jmp 0x100038ee
mov dword [esp + 0x34], 0
mov ecx, 0xba21fbcd
mov esi, dword [esp + 0x8c]
mov dword [esp + 0x78], esi
jmp 0x100038ee
mov ecx, dword [esp + 0x80]
mov esi, dword [esp + 0x94]
cmp esi, ecx
mov ecx, 0xbc3b3e0e
setne byte [esp + 0x17]
jmp 0x100038ee
test edi, edi
mov ecx, eax
sete byte [esp + 0x11]
jmp 0x100038ee
cmp byte [esp + 0x15], 0
mov ecx, 0x9821a40c
mov esi, 0x44cb6f64
movzx ebx, word [esp + 2]
cmovne ecx, esi
mov word [esp], bx
jmp 0x100038ee
mov ecx, dword [esp + 0xf4]
mov ecx, dword [ecx]
mov dword [esp + 0xf8], ecx
mov ecx, 0x771747e9
jmp 0x100038ee
mov ecx, dword [esp + 0x60]
cmp ecx, 0x5b
mov ecx, 0x4526abf7
setl byte [esp + 0x13]
jmp 0x100038ee
mov ecx, dword [esp + 0x7c]
add ecx, 0xc
mov dword [esp + 0xd8], ecx
mov ecx, dword [esp + 0x44]
jmp 0x100038ee
mov ecx, dword [esp + 0xe0]
mov word [esp + 0x68], cx
mov ecx, 0xc0cb50ad
jmp 0x100038ee
mov ecx, dword [esp + 0x70]
mov dword [esp + 0x40], ecx
mov ecx, dword [esp + 0x9c]
mov dword [esp + 0xfc], ecx
mov ecx, dword [esp + 0x48]
jmp 0x100038ee
movzx ecx, word [esp + 4]
mov word [esp + 0x2c], cx
mov ecx, dword [esp + 0xb4]
jmp 0x100038ee
mov esi, dword [esp + 0x24]
mov ecx, 0x60a5b101
mov dword [esp + 8], esi
jmp 0x100038ee
mov ecx, 0x1a4b72d8
jmp 0x100038ee
mov ecx, dword [esp + 0x60]
add ecx, 0x20
mov dword [esp + 0xe0], ecx
mov ecx, 0x377147f7
jmp 0x100038ee
mov ecx, dword [esp + 0xe8]
mov dword [esp + 0x74], ecx
mov ecx, 0xc8cf7884
mov esi, dword [esp + 0x90]
mov dword [esp + 0x6c], esi
jmp 0x100038ee
mov ecx, dword [esp + 0x5c]
add ecx, 0x2c
mov dword [esp + 0x84], ecx
mov ecx, dword [esp + 0x84]
movzx ecx, word [ecx]
mov esi, dword [esp + 0x20]
shr ecx, 1
cmp esi, ecx
mov ecx, dword [esp + 0xac]
setl byte [esp + 0x12]
jmp 0x100038ee
mov ecx, 0x25810f58
jmp 0x100038ee
mov ecx, dword [esp + 8]
mov dword [esp + 0x100], ecx
mov ecx, dword [esp + 0xc4]
jmp 0x100038ee
mov ecx, dword [esp + 0x40]
mov dword [esp + 0xf4], ecx
mov ecx, 0xb40fba89
jmp 0x100038ee
movzx esi, word [esp + 0x68]
mov ecx, 0x6e2eb183
mov word [esp + 4], si
jmp 0x100038ee
mov ecx, dword [esp + 0x64]
add ecx, 0x20
mov dword [esp + 0xe4], ecx
mov ecx, 0xb80f4efa
jmp 0x100038ee
cmp byte [esp + 0x13], 0
mov ecx, 0x6e2eb183
mov esi, 0x2aa01da0
cmovne ecx, esi
movzx esi, word [esp + 0xc]
mov word [esp + 4], si
jmp 0x100038ee
mov ecx, dword [esp + 0x18]
cmp dword [esp + 0x38], 0
mov esi, 0xd14c9e21
mov dword [esp + 0x94], ecx
mov ecx, dword [esp + 0x3c]
mov dword [esp + 0x98], ecx
mov ecx, 0xa0bef26d
mov ebx, dword [esp + 0x98]
cmove ecx, esi
mov dword [esp + 0x24], ebx
jmp 0x100038ee
mov ecx, dword [esp + 0xf8]
mov dword [esp + 0x38], 0
mov dword [esp + 0x18], ecx
mov ecx, 0x1e401b38
mov esi, dword [esp + 0xfc]
mov dword [esp + 0x3c], esi
jmp 0x100038ee
movzx esi, word [esp + 0x6a]
mov ecx, 0x9821a40c
mov word [esp], si
jmp 0x100038ee
mov ecx, dword [esp + 0x7c]
mov ecx, 0x35f489af
jmp 0x100038ee
mov ecx, dword [esp + 0x74]
mov dword [esp + 0x20], ecx
mov ecx, dword [esp + 0x6c]
mov dword [esp + 0x8c], ecx
mov ecx, dword [esp + 0xa8]
jmp 0x100038ee
cmp byte [esp + 0x11], 0
mov ecx, 0xaffe1dc3
mov esi, 0x569b20a5
cmovne ecx, esi
jmp 0x100038ee
mov ecx, 0x5979f0be
jmp 0x100038ee
mov ecx, 0xfe6ebc41
jmp 0x100038ee
mov ecx, dword [esp + 0x5c]
add ecx, 0x18
mov dword [esp + 0xec], ecx
mov ecx, 0xf377f7e7
jmp 0x100038ee
movzx ecx, word [esp]
mov word [esp + 0x2e], cx
mov ecx, dword [esp + 0xb8]
jmp 0x100038ee
mov ecx, dword fs:[0x30]
mov dword [esp + 0x7c], ecx
mov ecx, dword [esp + 0x1c]
jmp 0x100038ee
movzx ecx, word [esp + 2]
mov ecx, 0x8f95d364
jmp 0x100038ee
mov ecx, dword [esp + 0x78]
cmp dword [esp + 0x34], 0
mov esi, 0x5f9beef4
mov dword [esp + 0x90], ecx
mov ecx, 0x20079e93
mov ebx, dword [esp + 0x90]
cmove ecx, esi
mov dword [esp + 0x30], ebx
jmp 0x100038ee
mov ecx, 0x5247a0e4
jmp 0x100038ee
mov ecx, dword [esp + 0x64]
cmp ecx, 0x5b
mov ecx, 0x5b6b7909
setl byte [esp + 0x15]
jmp 0x100038ee
mov eax, dword [esp + 0x100]
add esp, 0x104
pop esi
pop edi
pop ebx
pop ebp
ret